1

我正在与我的 C# 项目中的自定义 COM 组件进行交互。

我用 IDisposable 包装它。

我面临的问题是,一旦程序运行,我在Process Explorer中看不到 CSCCOM 的 DLL。

4

3 回答 3

1

如果 COM 服务器 DLL 无法加载,那么您会从这段代码中得到一个响亮的 kaboom。CSCCOMWRAP 构造函数将引发异常。可能你没有猜对服务器的DLL名称,不是那么容易找到的。您必须在注册表中查找 InProcServer32 注册表项值才能知道 DLL 名称。

请注意,您的 IDisposable 实现什么也没做。

于 2010-09-08T10:49:16.613 回答
0

您是否只检查过您自己的进程或是否搜索过 COM-DLL?ProcessExplorer 允许您搜索文件等。

可能是,DLL 没有直接加载到您的进程中,而是加载到单独的包装进程甚至 Windows 服务中。

于 2010-09-08T07:17:27.983 回答
0

好的。刚刚发现代码没有问题。但是我看不到 COM dll 的原因是 ProcessExplorer 中没有打开“显示下窗格”。

在 ProcessExplorer 中查看正在运行的进程的所有相关 dll 的步骤:

  1. 确保在 ProcessExplorer 中选中 View > Show Lower Pane。
  2. 确保选中 View > Lower Pane View > DLLs。
  3. 从上部窗格中选择进程以在下部窗格中查看所有相关的 DLL。

希望这对像我这样的 ProcessExplorer 新手有所帮助!

于 2010-09-09T11:39:36.777 回答