Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Get All ProgID on System for COM Automation
- // See http://procbits.com/2010/11/08/get-all-progid-on-system-for-com-automation
- var regClis = Registry.ClassesRoot.OpenSubKey("CLSID");
- var progs = new List<string>();
- foreach (var clsid in regClis.GetSubKeyNames()) {
- var regClsidKey = regClis.OpenSubKey(clsid);
- var ProgID = regClsidKey.OpenSubKey("ProgID");
- var regPath = regClsidKey.OpenSubKey("InprocServer32");
- if (regPath == null)
- regPath = regClsidKey.OpenSubKey("LocalServer32");
- if (regPath != null && ProgID != null) {
- var pid = ProgID.GetValue("");
- var filePath = regPath.GetValue("");
- progs.Add(pid + " -> " + filePath);
- regPath.Close();
- }
- regClsidKey.Close();
- }
- regClis.Close();
- progs.Sort();
- var sw = new StreamWriter(@"c:\ProgIDs.txt");
- foreach (var line in progs)
- sw.WriteLine(line);
- sw.Close();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement