P / Invoke для исключений нулевой ссылки x64 - PullRequest
0 голосов
/ 24 февраля 2010

P / Invoke для исключений нулевой ссылки x64

Я получаю исключения с нулевой ссылкой, когда пытаюсь скомпилировать для x64 в коде .NET, который использует службы вызова платформы для вызова неуправляемого кода в DLL. Я что-то упускаю здесь очевидное?

например. позвоните

Private Declare Function waveOutOpen Lib "winmm.dll" (ByRef lphWaveOut As Int32, ByVal uDeviceID As Int32, ByRef lpFormat As WAVEFORMATEX, ByVal dwCallback As WaveDelegate, ByVal dwInstance As Int32, ByVal dwFlags As Int32) As Int32

терпит неудачу в:

полный код здесь: иногда возникают проблемы с памятью

Ответы [ 2 ]

2 голосов
/ 24 февраля 2010

Возможно, вы используете набор int (фиксированный размер 32 бита), где на самом деле потребуется IntPtr (размер зависит от платформы)?

0 голосов
/ 24 февраля 2010

Не существует 64-битной версии этой неуправляемой DLL. 32-битная версия вызывается и, конечно, вещи не совсем совпадают?

...