Page 1 of 1 1
Topic Options
#198343 - 2010-04-06 06:48 PM Enumerate Group Policy Result
Dr_Rick Offline
Fresh Scripter

Registered: 2009-07-05
Posts: 38
Loc: Guam
IS there anyway to get the same information that Microsoft's gpresult returns using a kix script without shelling out to execute it? I would like to bring it into a KixForm ListBox control.

Thanks
Dr Rick
_________________________
Dr Rick
Computer Specialist

Top
#198344 - 2010-04-06 08:05 PM Re: Enumerate Group Policy Result [Re: Dr_Rick]
Radimus Moderator Offline
Moderator
*****

Registered: 2000-01-06
Posts: 5187
Loc: Tampa, FL
 Code:
break on

$computer = "remotePCname"

$objWMIService = GetObject("winmgmts:\\"+$computer+"\root\rsop\computer")
$colItems = $objWMIService.ExecQuery("Select * from RSOP_GPO")

For Each $objItem in $colItems  
    ? "Name: " + $objItem.Name
    ? "GUID Name: " + $objItem.GUIDName
    ? "ID: " + $objItem.ID
    ? "Access Denied: " + $objItem.AccessDenied
    ? "Enabled: " + $objItem.Enabled
    ? "File System path: " + $objItem.FileSystemPath
    ? "Filter Allowed: " + $objItem.FilterAllowed
    ? "Filter ID: " + $objItem.FilterId
    ? "Version: " + $objItem.Version
    ? " "
Next



see:
http://www.activexperts.com/activmonitor/windowsmanagement/scripts/grouppolicy/


Edited by Radimus (2010-04-06 08:07 PM)
_________________________
How to ask questions the smart way <-----------> Before you ask

Top
#198345 - 2010-04-06 11:03 PM Re: Enumerate Group Policy Result [Re: Radimus]
Radimus Moderator Offline
Moderator
*****

Registered: 2000-01-06
Posts: 5187
Loc: Tampa, FL
ok... this was a real pain, but here it is:

 Code:
break on

$computer = "remotePCname"

? '---- Computer ----'
$objWMIService = GetObject("winmgmts:\\" + $Computer + "\root\rsop\computer")
$GPOItems = $objWMIService.ExecQuery("Select * From RSOP_GPLink Where AppliedOrder <>'0'")

For Each $GPOItem in $GPOItems 
	$left=instr($GPOItem.GPO,'{')
	$right=instr($GPOItem.GPO,'}')+1
	$gpoid = substr($GPOItem.GPO,$left,$right-$left)
	? $GPOItem.AppliedOrder

	$colItems = $objWMIService.ExecQuery("Select * from RSOP_GPO where GUIDName='" +$GPOID+"'")
	For Each $objItem in $colItems  
		" - " + "Name: " + $objItem.Name
		;? "GUID Name: " + $objItem.GUIDName
	Next
Next
? '---- User ----'
$objWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" + $Computer + "\root\cimv2")
$colProc = $objWmi.ExecQuery("Select * from Win32_Process Where Name='explorer.exe'")
For Each $oProcess In $colProc 
	$SID = $oprocess.ExecMethod_("GetOwnerSID").SID
	$User = $oprocess.ExecMethod_("GetOwner").User
 $User
	$wmiSID = Join(split($SID,"-"),"_")
Next

$objWMIService = GetObject("winmgmts:\\" + $Computer + "\root\rsop\user\"+$wmiSID)
$GPOItems = $objWMIService.ExecQuery("Select * From RSOP_GPLink Where AppliedOrder <>'0'")

For Each $GPOItem in $GPOItems 
	$left=instr($GPOItem.GPO,'{')
	$right=instr($GPOItem.GPO,'}')+1
	$gpoid = substr($GPOItem.GPO,$left,$right-$left)
	? $GPOItem.AppliedOrder

	$colItems = $objWMIService.ExecQuery("Select * from RSOP_GPO where GUIDName='" +$GPOID+"'")
	For Each $objItem in $colItems  
		" - " +  "Name: " + $objItem.Name
		;? "GUID Name: " + $objItem.GUIDName
	Next
Next
_________________________
How to ask questions the smart way <-----------> Before you ask

Top
Page 1 of 1 1


Moderator:  Jochen, Allen, Radimus, Glenn Barnas, ShaneEP, Ruud van Velsen, Arend_, Mart 
Hop to:
Shout Box

Who's Online
0 registered and 764 anonymous users online.
Newest Members
ManuvdWielNL, Sir_Barrington, batdk82, StuTheCoder, M_Moore
17887 Registered Users

Generated in 0.053 seconds in which 0.026 seconds were spent on a total of 13 queries. Zlib compression enabled.

Search the board with:
superb Board Search
or try with google:
Google
Web kixtart.org