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 спецификацией
Пока на собственное сообщение не было ответов, его можно удалить.