citroendsvier
Goto Top

VBS - CPU Modell auslesen, wo liegt der Fehler?

Hallo zusammen,

ich sitze hier vor einem Scriptstück und versuche, den Fehler zu finden. Entweder bin ich blind, oder...

<code type="html">
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set CPUObject = objWMIService.ExecQuery("Select * from Win32_Processor")
WScript.Echo CPUObject.Name


Ich wäre euch für Hilfe sehr dankbar ;)

MfG, V40

Content-ID: 260107

Url: https://administrator.de/contentid/260107

Ausgedruckt am: 22.11.2024 um 16:11 Uhr

rubberman
Lösung rubberman 16.01.2015 aktualisiert um 20:14:29 Uhr
Goto Top
Hallo citroendsvier,

Die ExecQuery() Methode gibt ein Collection-Objekt zurück, das du in einer For-Each Schleife verwursten solltest.
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")  
Set CPUCollection = objWMIService.ExecQuery("Select * from Win32_Processor")  
For Each CPUObject In CPUCollection
  WScript.Echo CPUObject.Name
Next

Grüße
rubberman
citroendsvier
citroendsvier 16.01.2015 um 18:14:32 Uhr
Goto Top
Okay... gibt es auch eine Möglichkeit, das ganze ohne For Schleife zu machen? (Halte ich bei einer Sache in der Schleife für unschön)
rubberman
Lösung rubberman 16.01.2015 aktualisiert um 20:14:27 Uhr
Goto Top
Möglich ist das, aber völlig unüblich und nicht schöner.

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")  
Set CPUCollection = objWMIService.ExecQuery("Select * from Win32_Processor")  
If CPUCollection.Count > 0 Then WScript.Echo CPUCollection.ItemIndex(0).Name

Grüße
rubberman
citroendsvier
citroendsvier 16.01.2015 um 20:12:43 Uhr
Goto Top
Vielen Dank! Hast Recht, die andere Variante war schöner...

Schönen Abend noch ;)