# Filename: getProgIDsFromWBEM.py # Roy H. Han (http://us.pycon.org/2008/tutorials/AutomatingWindows/) import win32com.client # Dispatch WBEM wbem = win32com.client.Dispatch('WbemScripting.SWbemLocator') wbemServer = wbem.ConnectServer('.', 'root\cimv2') # Extract progIDs sql = 'SELECT ProgID FROM Win32_ProgIDSpecification' results = wbemServer.ExecQuery(sql) progIDs = [x.ProgID for x in results]; progIDs.sort() # Record results outputFile = open('progIDs_partialFromWBEM.txt', 'wt') outputFile.write('\n'.join(progIDs)) outputFile.close()