2016-10-26 3 views
1

Die Situation ist wie folgt: Ich habe ein Stück Hardware mit einem Windows-PC über eine serielle Schnittstelle verbunden. Diese benutzerdefinierte Hardware wird verwendet, um andere Hardware über GPIB zu verbinden. Jetzt muss die Software, die für den Betrieb dieses Setups auf der PC-Seite verwendet wird, geändert werden, ohne die Hardware in der Mitte zu berühren. Das Problem ist, die richtige serielle Kommunikation zu bekommen. Parameter, die für die Kommunikation verwendet werden - das Einstellen (insbesondere die Timeouts - Baudraten und Bits sind in Ordnung) auf beliebige Werte in der neuen Software führt zu vielen Kommunikationsfehlern, so dass ich sie genau kennen möchte. Die Funktion GetCommTimeouts() würde die Aufgabe erledigen, jedoch benötigen Sie den Handle zur Kommunikation. Gerät über Aufruf von CreateFile() - nur die Original-Software hat Zugriff darauf. Die Frage ist also, ob man diese Einstellungen von außerhalb der laufenden, alten App bekommen kann?COM-Port-Einstellungen einer laufenden App herausfinden

Danke, Trinker

+0

Ich würde empfehlen, ein Tool wie SysInternals Process Monitor zu verwenden. Sie können die aufrufenden Anrufe überwachen und den seriellen Port in der Anwendung konfigurieren. –

+0

Das scheint vielversprechend, also habe ich mir dieses Dienstprogramm angeschaut. Ich habe nach CreateFile-Operationen gesucht, aber das scheint keine nützlichen Informationen zu enthalten. Nach was soll ich suchen? – drinker

+0

Ich denke, ich müsste Aufrufe von SetCommTimeouts abfangen - ist das im Proc Monitor möglich? – drinker

Antwort

1

Ich würde vorschlagen, ein Tool wie Process Monitor verwenden. Dieses Tool kann die Aufrufe überwachen, die zum Öffnen und Konfigurieren einer seriellen Schnittstelle verwendet werden.

Verwandte Themen