in reply to Re: Re: Re: Win32::OLE and WMI
in thread Win32::OLE and WMI

I've not seen that syntax before (ie. with a shriek after WinMgmts: and before Win32).

I know its heresy, but my only option at the moment seems to be using the vbs code. It works fine. If I ever get the perl code to work I'll let you know.

PS. Try this vbs and see if it hangs...

a = ShowPermissions("computer","sharename") Function ShowPermissions(ComputerName,ExplicitPath) Set objSecurity = GetObject("winmgmts:{(Security,Restore)}\\" & Co +mputerName & _ "\root\cimv2:Win32_LogicalShareSecuritySetting='" & ExplicitPa +th & "'") If objSecurity.GetSecurityDescriptor(objSD) = 0 Then For Each objACE in objSD.DACL wscript.Echo objACE.Trustee.Domain, objACE.Trustee.Name PermissionBitMask = objACE.AccessMask Select Case PermissionBitMask Case 1179817 wscript.Echo "Read" Case 1245631 wscript.Echo "Modify" Case 2032127 wscript.Echo "Full" Case Else wscript.Echo "Other: " & PermissionBitMask End Select Next End If End Function

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: Win32::OLE and WMI
by maa (Pilgrim) on Feb 03, 2004 at 12:18 UTC

    Hmm... I got some weird error running the VBS. Probably my machine. All other things I tried just hung... you could take a look at Win32::Perms, though - it looks fairly easy to use.