![]() |
WMI Monitore auslesen - Array[0..15] auslesen aber wies
Liste der Anhänge anzeigen (Anzahl: 2)
Moin zusammen,
ich lesen mit folgendem Code, die aktuell verbundenen Monitore eines Rechners aus WMI
Delphi-Quellcode:
Es muss eine SerialNumber meines Monitors herauskommen. Leider kommen nur die Zahlen. Hex nach String bringt leider auch nix.
var
SWbemLocator1 : ISWbemLocator; aSrv : ISWbemServices; vNVS : OleVariant; aObjSet : ISWbemObjectSet; aNVSDummy : IDispatch; pEnum : IEnumVARIANT; vOut : OleVariant; dwRetrieved : LongWord; hRes : HResult; Value : Variant; begin SWbemLocator1 := CoSWbemLocator.Create; aSrv := SWbemLocator1.ConnectServer('localhost','root\WMI','','','','',0,vNVS); aObjSet := aSrv.ExecQuery('Select * from WMIMonitorId','WQL', 0, aNVSDummy); pEnum := aObjSet.Get__NewEnum as IEnumVARIANT; while (TRUE) do begin hRes := pEnum.Next(1, vOut, dwRetrieved); if hRes <> S_OK then Break; Value := vOut.SerialNumberID; showMessage(Value[0]); // -> kommt eine 2stellige Zahl raus showMessage(Value[1]); // -> kommt eine 2stellige Zahl raus showMessage(Value[2]); // -> kommt eine 2stellige Zahl raus end; Erwarteter Wert : 7MT018BR2PYU Wie muss ich Value erzeugen, damit ich die SerialNumber bekommen. Anbei die Werte aus WMI und das PowerShell Script, wo es funktioniert. Ich hoffe einer von euch kennt sich da aus. Vielen Dank im voraus. Sven |
AW: WMI Monitore auslesen - Array[0..15] auslesen aber wies
Was ergibt denn
Delphi-Quellcode:
?
ShowMessage(Value);
Eigentlich müsste SerialNumber eine Zeichenfolge sein, damit könnte man Value auch als String definieren. Funktioniert nicht eventuell auch schon
Delphi-Quellcode:
?
showMessage(vOut.SerialNumberID);
|
AW: WMI Monitore auslesen - Array[0..15] auslesen aber wies
Liste der Anhänge anzeigen (Anzahl: 1)
Moin,
das hatte ich ganz vergessen, zu erwähnen, dass ging leider nicht. Da es ein Arry Variant ist, laut Fehlermeldung. Siehe Screenshot. Daher auch die Idee jedes Element einzeln anzusprechen aber die Inhalte der Elemente ergeben für mich leider keinen Sinn. Eventuell muss man noch etwas konvertieren. vartype ergibt 8204. |
AW: WMI Monitore auslesen - Array[0..15] auslesen aber wies
Könntest du denn mal die Zahlen aus dem Array posten?
Edit: Die folgende Zeile müsste doch die Lösung sein: Zitat:
|
AW: WMI Monitore auslesen - Array[0..15] auslesen aber wies
Kann ich gerne machen.
Bin aber erst nächste Woche Freitag wieder im Büro Aber dann poste ich sie sofort. Vielen Dank schon mal für die Unterstützung |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz