Re[2]: Вызов Win32 функции по её адресу
От: Valkov  
Дата: 24.08.06 07:44
Оценка:
Вариант Tao:
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class IlasmAttribute : Attribute
{
private IlasmAttribute()
{

}

public IlasmAttribute(string msil)
{

}
}

[IlasmAttribute(".maxstack 7\r\nldarg hdc\r\nldarg piAttribIList\r\nldarg pfAttribFList\r\nldarg nMaxFormats\r\nldarg piFormats\r\nldarg nNumFormats\r\nldarg extensionPointer\r\ncalli unmanaged stdcall int32([in]native int,[in]int32[],[in]float32[],[in]int32,[out]int32[],[out]int32)\r\nret")]
public static int wglChoosePixelFormatARB([In] IntPtr extensionPointer, IntPtr hdc, int[] piAttribIList, float[] pfAttribFList, int nMaxFormats, int[] piFormats, out int nNumFormats) { throw new NotImplementedException("IL replacement failure."); }

Вариант мой:
private const CallingConvention CALLING_CONVENTION = CallingConvention.Winapi;


[DllImport("glu32.dll", CallingConvention = CALLING_CONVENTION, EntryPoint = "wglChoosePixelFormatARB"), SuppressUnmanagedCodeSecurity]
public static extern int wglChoosePixelFormatARB([In] IntPtr extensionPointer, IntPtr hdc, int[] piAttribIList, float[] pfAttribFList, int nMaxFormats, int[] piFormats, out int nNumFormats);

Пробовал уже по разному, в плоть до переопределения атрибутов в соответствии с OpenGl 2.1 спецификацией
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.