- Код: Выделить всё
Dim secatt As SECURITY_ATTRIBUTES
Dim hUsb As Long
Dim Ret As Long
Dim ResultW As Long, ResultR As Long
Dim buffer As String * 64
Dim d As String * 3
secatt.bInheritHandle = 0&
secatt.lpSecurityDescriptor = 0&
secatt.nLength = 0&
d = "AT" & Chr$(13)
hUsb = CreateFile("\\?\Genius GM56PCI-SM Modem", _
GENERIC_READ Or GENERIC_WRITE, FILE_SHARE_READ Or FILE_SHARE_WRITE, secatt, OPEN_EXISTING, 0, 0&)
ResultW = WriteFile(hUsb, d, 3, Ret, ByVal 0&)
ResultR = ReadFile(hUsb, buffer, 64, Ret, ByVal 0&)
CloseHandle hUsb
Одно только ResultW и ResultR возвращают 1 при передаче, следовательно данные отсылаются и получаются, а почему тогда buffer содержит тоже самое, что отослано через WriteFile (вроде должно быть что-то вроде "ОК")? Может я эти функции неправильно вызываю?
PS: hUSb правильный - модем пищит и переходит в режим ожидания.