0
有没有一种很好的方式来编程获取C#中注册的COM服务器的路径?如何获取C#中注册的COM服务器的路径?
我们有一个我们在C#项目中引用的进程外COM服务器(即一个exe文件)但是我们希望强制执行从特定位置运行COM服务器,因此我们希望在启动它之前检查注册的exe文件的路径。除了进入注册表之外,还有一个好办法可以做到这一点吗?
有没有一种很好的方式来编程获取C#中注册的COM服务器的路径?如何获取C#中注册的COM服务器的路径?
我们有一个我们在C#项目中引用的进程外COM服务器(即一个exe文件)但是我们希望强制执行从特定位置运行COM服务器,因此我们希望在启动它之前检查注册的exe文件的路径。除了进入注册表之外,还有一个好办法可以做到这一点吗?
功能QueryPathOfRegTypeLib就是这样做的。
但是,我也注意到一个奇怪的怪癖:
如果我第一次从一个路径登记在每个用户的基础上:
C:\路径1 \ comserver.exe/regserverperuser
和然后从另一个路径注册在系统级上基础:
C:\路径2 \ comserver.exe/REGSERVER
然后QueryPathOfRegTypeLib返回C:\ Path1 \ comserver.exe,但它实际上是在加载类型库时启动的c:\ Path2 \ comserver.exe ...
注册表使用情况实际上已记录在案,例如LocalServer32密钥:https:/ /msdn.microsoft.com/en-us/library/windows/desktop/ms683844.aspx –
不,没有好方法。当服务器本身可以轻易地告诉你时,不要依赖oracle。 –