Вот функция, которая выбирает значение из реестра.Требуется дополнительная проверка.
using Microsoft.Win32;
//...
static string GetCOMPath(string comName)
{
RegistryKey comKey = Registry.ClassesRoot.OpenSubKey(comName + "\\CLSID");
string clsid = (string)comKey.GetValue("");
comKey = Registry.ClassesRoot.OpenSubKey("CLSID\\" + clsid + "\\LocalServer32");
return (string)comKey.GetValue("");
}
Однако мне было интересно, не было ли это еще где-нибудь в потерянной библиотеке C # ...