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-Key: 260107

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

Printed on: April 26, 2024 at 21:04 o'clock

Member: rubberman
Solution rubberman Jan 16, 2015 updated at 19:14:29 (UTC)
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
Member: citroendsvier
citroendsvier Jan 16, 2015 at 17:14:32 (UTC)
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)
Member: rubberman
Solution rubberman Jan 16, 2015 updated at 19:14:27 (UTC)
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
Member: citroendsvier
citroendsvier Jan 16, 2015 at 19:12:43 (UTC)
Goto Top
Vielen Dank! Hast Recht, die andere Variante war schöner...

Schönen Abend noch ;)