检查可移植可执行文件(PE)文件以查找COM签名

时间:2013-09-20 20:56:19

标签: c# .net dll com inproc

我需要以编程方式检查任意Dll以查看它们是否是inproc COM服务器。换句话说,它们是否可以使用regsvr32 / DllRegisterServer在当前系统上注册。

Andy's suggestions问题上this之后,有没有办法找出所需的内容而不必:

  • 加载库并检查DllRegisterServer / DllUnregisterServer导出。
  • 在捕获异常时尝试注册regsvr32?

PE格式必须有一些表明需要的东西。我的假设是'regsvr32'已在内部执行此操作。非常感谢任何意见。

1 个答案:

答案 0 :(得分:3)

没有。使DLL成为COM对象的唯一方法是导出DllGetClassObject。使其可注册的唯一因素是它导出DllRegisterServer