Hallo,
ich versuche gerade über die WM_DEVICECHANGE Message herauszubekommen, ob ein neuer
Com Port von einem USB Barcodescanner im System angelegt/gelöscht wird. Das funktioniert soweit ganz gut. Nun möchte ich noch den Namen des Ports wissen und da scheitert es an meinen
API Kenntnissen.
Die Struktur zum Auslesen der Information hab ich schon in
Jedi gefunden (DBT.pas):
Delphi-Quellcode:
PDevBroadCastPortA = ^TDevBroadCastPortA;
DEV_BROADCAST_PORT_A = record
dbcp_size: DWORD;
dbcp_devicetype: DWORD;
dbcp_reserved: DWORD;
dbcp_name: array [0..0] of AnsiChar;
end;
TDevBroadCastPortA = DEV_BROADCAST_PORT_A;
Das Auslesen mache ich über:
PDevBroadcastPortA(Msg.LParam)^.dbcp_name
Ich weiß nicht, wie ich mit dem dhcp_name umgehen soll, laut
msdn ist es ein Pointer zu einem nullterminierten string. Die Länge im Ergebnis ist 1 und enthält 'C'. Das 'C' ist bestimmt der Anfang von ComXX.
Wie komme ich jetzt bloss an den kompletten String?
Gruß,