I am working on creating a python script to find Installed programs in Uninstall folder in registry, the script works perfectly fine on 32 bit machines but errors out with a wmi error on 64 bit machines. Am not able to get hold of a wmi module for python on 64 bit machines.Is there one at all? Please ignore indentation errors. I found this script in some forum, apologies for not giving due credit to the corresponding author r = wmi.Registry() result, names = r.EnumKey (hDefKey=HKEY_LOCAL_MACHINE, sSubKeyName=r"Software\Microsoft\Windows\CurrentVersion\Uninstall")
separator = "*" * 80 keyPath = r"Software\Microsoft\Windows\CurrentVersion\Uninstall" for subkey in names: try: path = keyPath + "\\" + subkey key = OpenKey(HKEY_LOCAL_MACHINE, path, 0, KEY_ALL_ACCESS) try: temp = QueryValueEx(key, 'DisplayName') temp1 = QueryValueEx(key, 'DisplayVersion') temp2 = QueryValueEx(key, 'Publisher') display = str(temp[0]) display_ver=str(temp1[0]) display_p=str(temp2[0]) print ('Display Name: ' + display + '\nDisplay version: ' + display_ver + '\nVendor/Publisher: ' + display_p +'\nRegkey: ' + subkey + '\n') except: print ('Regkey: ' + subkey + '\n') except: fp = StringIO.StringIO() traceback.print_exc(file=fp) errorMessage = fp.getvalue() #error = 'Error for ' + key + '. Message follows:\n' + errorMessage #HelperFuncs.LogError(error) -- http://mail.python.org/mailman/listinfo/python-list