gpt4 book ai didi

c# - 如何获取事件的Excel实例?

转载 作者:行者123 更新时间:2023-11-30 16:36:29 24 4
gpt4 key购买 nike

我有一个 C# 应用程序,这个应用程序根据用户需求粘贴信息到 excel,背后的逻辑是这样的,如果没有运行的 excel 实例,它会创建一个并粘贴到该实例。

如果只有一个实例在运行,它会尝试获取该实例并使用它。这是我用来执行此操作的代码:

Guid _guid;
CLSIDFromProgID("Excel.Application", out _guid);
if (_guid == Guid.Empty) {...}
IntPtr _ptr = new IntPtr();
GetActiveObject(ref _guid, _ptr, out objApp);

到目前为止一切正常,但我遇到的问题是当有多个 excel 实例在运行时,我想获取 Excel 的事件实例,但目前我只能获取第一个实例打开了,这是我看的第一个注册到运行对象表的实例。

有没有办法“询问”excel 实例是否是事件实例并使用它?或者如何获取事件实例?

最佳答案

有关掌握或启动 Excel 的所有可能性,请参阅 Andrew Whitechapel 的这篇博客文章:

Launching Office Apps Programmatically

如果您可以获得“事件”Excel 实例的窗口句柄,您可能想尝试使用 AccessibleObjectFromWindow,这将使您能够访问 OM。

关于c# - 如何获取事件的Excel实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/756951/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com