По поводу баланса для e1550 в road runner:
Делаем надпись и кнопку (или кликабельную надпись)
L,617,32,64,23,#DFX1R#,#DFX1G#,#DFX1B#,14,"Arial", "=$ModemBalance$","CENTER"
B,628,31,163,81,"SENDMSG;CGSubTitles;Refresh balance"
В autohotkey далем таймер, который будет запрашивать данные у CGSubTitles и выдавать их в RR
Код:
...
SetTimer, RefreshRRVars,1000
...
return
...
RefreshRRVars:
CDSSendMessage("SETVAR;MODEMRSSI;`%ModemRSSI`%||SETVAR;ModemConnectionType;`%ModemConnectionType`%||SETVAR;ModemBalance;`%ModemBalance`%", "ahk_class TCamGrabberSubTitles", WinExist("RoadRunner"),2) ; Просим CGSubTitles.exe отдать в RR данные по модему.
return
; Функция отправки команды методом WM_COPY
CDSSendMessage(msg, prg, hndl="",port=1)
{
len := StrLen(msg)
; port := 1
VarSetCapacity(CopyDataStruct, 12, 0)
NumPut(port, CopyDataStruct, 0)
NumPut(len, CopyDataStruct, 4) ; тут именно len, а не len+1 как пишут в некоторых примерах
NumPut(&msg, CopyDataStruct, 8)
SendMessage, 0x4A, %hndl%, &CopyDataStruct,, %prg%
return
}
CGSubTitles брать тут
http://www.pccar.ru/showthread.php?p=91953#post91953
Ему можно задать неправильный COM порт GPS и чтобы он ничего никуда не слал, связанное с GPS.