- Код: Выделить всё
Public Declare Function SetAdvancedFormat Lib "D:\Program Files\Microsoft Visual Studio\VB98\ASSS\Utility\Audio\Audio.dll" (BitPerSample As Integer, SamplePerSecond As Long, Channel As Integer, Format As WAVEFORMAT) As Long
Все работает нормально, но только из среды или с компиляцией в P-код. При компиляции в Native вылетает Access violation when writing....
Через дебагер смотрю моя функция из Dll вызывается заканчивается и где-то встает в коде бейсика, с ошибкой. Я думаю что это проблема с сохранением регистров. Собственно вопрос. Я в своем коде DLL сохраняю в каждой функции регистры ESI, EDI, EBX, ESP,EBP не помогает может какие нибудь еще надо? Тупо с PUHAD' ом все работает, но все же хотелось узнать конкретнее какие именно.