【发布时间】:2009-04-20 21:27:57
【问题描述】:
我正在使用 C#,我需要通过进程 ID 获取特定的 excel 实例;我从另一个应用程序获得了我需要的实例的进程 ID,但我不知道还能做什么,我不知道如何根据他的进程 ID 获取正在运行的 excel 实例。
我在网上进行了很多研究,但我只看到了使用 Marshal.GetActiveObject(...) 或 Marshal.BindToMoniker(...) 的示例,因为第一个返回的是在 ROT 中注册的第一个 Excel 实例并不完全是我需要的那个,第二个要求您在尝试获取实例之前保存 excel 文件。
另外,如果我能够使用进程 ID 获取我需要的 excel 实例的 CLSID,那么我可以调用
GetActiveObject(ref _guid, _ptr, out objApp);
最终将返回我需要的 excel 实例。
【问题讨论】:
-
你能给我发一个如何使用GetActiveObject方法的示例