Тема: AHK: нужна помощь с синтаксисом ActiveX
Доброго времени суток всем.
Нужна помощь с синтаксисом ActiveX. Сам я с ActiveX я раньше не сталкивался, а в связке с АНК - тем более.
Существует некий MBAXP Modbus Master ActiveX Control (https://www.modbustools.com/modbus_activex.html), предназначенный для коммуникации с Modbus устройствами в одноименной сети. После установки он помещает mbaxp.oxc в c:\windows\system32\ или c:\windows\SysWOW64\, CLSID: {B39F2751-9393-4463-8058-29ECC28F08C1}. Надо прикрутить к AHK. Увы, Help AHK в этом вопросе мне мало чем помог.
Описание подключения из Help MBAXP, код:
Description: Specify the connection to use COM1 through COM255. Or TCP/IP
0 = TCP/IP
1 = Serial port 1
2 = Serial port 2
...
255 = Serial port 255
Use GetLastError to check if the action succeeds.
Syntax Visual Basic: Connection As Integer
Visual C++: SetConnection (short Value);
Short GetConnection ();
Examples: Use Use TCP/IP
MBAXP1.Connection = 0
MBAXP1.IPAddr1 = 235
MBAXP1.IPAddr2 = 12
MBAXP1.IPAddr3 = 134
MBAXP1.IPAddr4 = 6
MBAXP1.Timeout = 1000
MBAXP1.OpenConnection()
If MBAXP1.GetLastError <> 0 Then
MsgBox “Open connection error”
End If
Просьба помочь с переводом на АНК.
Сам пробовал:
MBAXP1 := ComObjCreate("{B39F2751-9393-4463-8058-29ECC28F08C1}")
ComObjConnect(MBAXP1, "MBAXP1_")
MBAXP1.Connection := 0
MBAXP1.IPAddr1 := 192
MBAXP1.IPAddr2 := 168
MBAXP1.IPAddr3 := 1
MBAXP1.IPAddr4 := 20
MBAXP1.Timeout := 1000
...
При попытке присвоения любого параметра, начиная с Connection выдает Fatal Error.