[python-win32] Re: Fetching network interface instance names

Roger Upole rwupole at msn.com
Tue Jul 26 02:58:04 CEST 2005


"Schollnick, Benjamin" wrote:

> Except that they do not seem to work.... I have tried three so far, and
> they all fail with object has no attribute errors...
> 
> Either that, or there is a significant difference with ActiveState &
> standard
> Python 2.4.1 with the Win32all extensions...  (I don't remember a
> significant difference...
> I have previously used ActivateState back in the v2.0 / v2.1 days...)
> 
> For example...
> 
> def windows_installed_software ( host_computer = "."):
>    import win32com.client
>    strComputer = host_computer
>    objWMIService =
> win32com.client.Dispatch("WbemScripting.SWbemLocator")
>    objSWbemServices =
> objWMIService.ConnectServer(strComputer,"root\cimv2")
>    colItems = objSWbemServices.ExecQuery("Select * from Win32_Product")
>    for objItem in colItems:
>        print "Caption: ", objItem.Caption
>        print "Description: ", objItem.Description
>        print "Identifying Number: ", objItem.IdentifyingNumber
>        print "Install Date: ", objItem.InstallDate
>        print "Install Date 2: ", objItem.InstallDate2
>        print "Install Location: ", objItem.InstallLocation
>        print "Install State: ", objItem.InstallState
>        print "Name: ", objItem.Name
>        print "Package Cache: ", objItem.PackageCache
>        print "SKU Number: ", objItem.SKUNumber
>        print "Vendor: ", objItem.Vendor
>        print "Version: ", objItem.Version
> 
> They are obviously missing a step, because the colItems /
> ExecQuerry is working, but
> objItems does not have any of the Caption / Description, etc
> variables....
> 
> So there must be a missing step....
> 

WMI properties work differently depending on whether you've created the
makepy generated file.  Delete everything in the folder
\win32com\gen_py and the above code should work.
You can also use win32com.client.dynamic.DumbDispatch
in place of win32com.client.Dispatch to explicitely avoid
using it.

      hth
             Roger



More information about the Python-win32 mailing list