On 07/04/2010 14:57, Kevin Holleran wrote:
Thanks, I was able to connect to the remote machine.  However, how do
I query for a very specific key value?  I have to scan hundreds of
machines and need want to reduce what I am querying.  I would like to
be able to scan a very specific key and report on its value.

The docs for the WMI Registry provider are here:

  http://msdn.microsoft.com/en-us/library/aa393664%28VS.85%29.aspx

and you probably want this:

  http://msdn.microsoft.com/en-us/library/aa390788%28v=VS.85%29.aspx


With _winreg I could just do:
keyPath = _winreg.ConnectRegistry(r"\\" + ip_a,_winreg.HKEY_LOCAL_MACHINE)
try:
       hKey = _winreg.OpenKey (keyPath,
r"SYSTEM\CurrentControlSet\services\Tcpip\Parameters", 0,
_winreg.KEY_READ)
       value,type = _winreg.QueryValueEx(hKey,"Domain")

Also, is there a performance hit with WMI where perhaps I want to try
to connect with the inherited credentials using _winreg first and then
use the MWI if that fails?

Certainly a consideration. Generally WMI isn't the fastest thing in the
world either to connect nor to query. I suspect a try/except with
_winreg is worth a go, falling through to WMI.

TJG
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to