Ja, in Process Explorer verfügt die Anwendung, die den Port verwendet, über einen "Datei" -Handle, \Device\SerialN
bei dem N ein nullbasierter Index ist.
Aktualisieren:
Das "N" in "serialN" ist nicht die COM-Port-Nummer, sondern der Index in der Liste der aktiven Ports. Wenn Sie nur einen Port verwenden, ist dieser immer (?) Und der zweite, den Sie öffnen, ist "Seriell1". Wenn Sie sie in umgekehrter Reihenfolge öffnen, werden die Zahlen umgekehrt.
Überprüfen Sie die QueryDosDevice- API. Sie sollten in der Lage sein, COM1 ... COM zu durchlaufen? und erhalten Sie für jeden offenen Port den Eintrag "\ device \ serialN". Mir ist kein Dienstprogramm bekannt, das dies tut. Möglicherweise müssen Sie Ihr eigenes Würfeln.
Es gibt ein weiteres COM-Port-spezifisches Beispiel hier .