Здравствуйте!
Я столкнулась со следующей проблемой. Есть .dll файл (написанный, скорей всего на С), содержащий команды, которые я запускаю из программы на VB.net.
Собственно вопрос. На С команда выглядит так :
DWStatus DWOpenDataFile (char* file_name, DWFileInfo* file_info)
DWFileInfo включает в себя double sample_rate, double start_store_time, double duration (насколько я понимаю - эта функция возвращает свойства открываемого файла).
Я пытаюсь запустить команду следующим способом (уверена, что типы параметров указаны не совсем верно):
Private Declare Function DWOpenDataFile Lib "D:\DWDataReaderLib_stdcall" Alias "_DWOpenDataFile@8" (ByVal file_name As String,
ByVal sample_rate As Double,
ByVal start_store_time As Double,
ByVal duration As Double)
Public Function OpenD7DFile(ByVal file_name As String,
ByVal sample_rate As Double,
ByVal start_store_time As Double,
ByVal duration As Double) As Object
OpenDataFile = DWOpenDataFile(file_name)
Dim OpenDataFile As Integer
file_name = "C:\test.d7d"
End Function
что приводит к ошибке pInvokeStackImbalance. Или в данном случае требует объявить аргументы для sample_rate, duration, start_store_time. Подскажите, что я делаю не так? Как правильно задать параметры ? Буду благодарна и за направление, в котором копать.