Hallo zusammen,
hab da ein Problem, bei dem ich Hilfe benötige....
Ich habe ein Gerät, was über USB to LAN am PC angeschlossen wird mittels Adapter.
Das Gerät selber hat eine feste IP-Adresse, die LAN-Adapter sind installiert und haben eineen (leider) von PC zu PC unterschiedlichen COM-Port installiert, aber eine feste BAUDrate.
Auf den PC sind die LAN-Adapter immer installiert, sodass die Telnet-Verbindung immer funktioniert... halt mit aufpoppenden DOS-Boxen.
Was mache ich zur Zeit:
Spoiler anzeigen
Func _telnet()
; Run Telnet
$adress = '192.168.1.4'
$WinTitle = "Telnet connection to target <<- Telnet ->>"
If Not WinExists($WinTitle, "") Then
Local $telnet = Run("telnet " & $adress, @SystemDir)
If @error <> 0 Then
TelnetError()
EndIf
WinWait("Telnet " & $adress, "", 1)
;======= Rename window
WinSetTitle("Telnet " & $adress, "", $WinTitle)
WinMove($WinTitle, "", 0, 0, 30, 30)
Else
GUICtrlSetState($FormatButton, $GUI_DISABLE)
EndIf
EndFunc ;==>_telnet
Dann spreche ich das Gerät über Telnet an, um auf dem Gerät BAT-Dateien auszuführen:
Spoiler anzeigen
Func _format_script()
If (WinActivate($WinTitle) = 0) Then
_telnet()
; MsgBox(48, "Attention", "No Telnet connection found!")
Else
xSend($WinTitle, "cd sdcard0" & "{ENTER}")
xSend($WinTitle, "format_script.bat " & "{ENTER}")
Sleep(100)
EndIf
EndFunc ;==>_format_script
Ihr könnt Euch denken, dass mir das (funktionierende) Script so nicht gefällt.
Die Ausgaben, die eigentlich auf der DOS-Box kommen, sollten über GUICtrlSetData() in meiner Textbox sichtbar werden...
Irgendwo hatte ich gelesen, dass man das über den COM-Port direkt machen kann, aber da kriege ich keinen Kopf dran...
Kann mir da mal bitte einer helfen???