Jump to content
Sign in to follow this  
Remo1075

WMI query

Recommended Posts

Remo1075

Hi,

I would like to start using WMI query alot more but am a novice at getting results back and processing them. I have found some script and changed it slightly for what I need. Now I need to be able to query the results, like if $result = "name domain.com" then msgbox() else other msgbox()

Any tips on where to start with WMI and autoit would also be cool.

;$strComputer = InputBox(" Computer Name", "Insert Computername to Query:", @ComputerName)
$strComputer ="Localhost"

$objWMIService = ObjGet("winmgmts:{impersonationLevel=Impersonate}!\\" & $strComputer & "\root\cimv2")
If Not IsObj($objWMIService) Then Exit

;Get Computername
$colSYSTEM = $objWMIService.ExecQuery ("SELECT * FROM Win32_Computersystem")
For $objSystem in $colSystem
    ConsoleWrite ($objSystem.Name & " " & $objSystem.Domain & @CRLF)
Next    

ConsoleWrite(@CRLF)
exit

Share this post


Link to post
Share on other sites
Remo1075

Hi,

I would like to start using WMI query alot more but am a novice at getting results back and processing them. I have found some script and changed it slightly for what I need. Now I need to be able to query the results, like if $result = "name domain.com" then msgbox() else other msgbox()

Any tips on where to start with WMI and autoit would also be cool.

;$strComputer = InputBox(" Computer Name", "Insert Computername to Query:", @ComputerName)
$strComputer ="Localhost"

$objWMIService = ObjGet("winmgmts:{impersonationLevel=Impersonate}!\\" & $strComputer & "\root\cimv2")
If Not IsObj($objWMIService) Then Exit

;Get Computername
$colSYSTEM = $objWMIService.ExecQuery ("SELECT * FROM Win32_Computersystem")
For $objSystem in $colSystem
    ConsoleWrite ($objSystem.Name & " " & $objSystem.Domain & @CRLF)
Next    

ConsoleWrite(@CRLF)
exit

Nevermind I found it out myself, maybe come in usefull for anyone else getting to grips to WMI.

$strComputer ="Localhost"
$4 = "test.com"
$1 = ObjGet("winmgmts:{impersonationLevel=Impersonate}!\\" & $strComputer & "\root\cimv2")
If Not IsObj($1) Then Exit

;Get Computername
$2 = $1.ExecQuery ("SELECT * FROM Win32_Computersystem")
For $3 in $2
$result = ($3.Domain)
Next    
if $result = $4 Then
    msgbox(0, "", "Welcome to the domain")
Else
MsgBox(16,"Error", "Something Went Horribly Wrong, Try Again...",3)     
EndIf

Share this post


Link to post
Share on other sites
water

Hi,

the AutoIt Scriptomatic tools mimics the M$ Scriptomatic tools. It uses a lot of WMI functions and creates the AutoIt code for the queries. Might me a good place to learn WMI or get some ideas.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.