我正在为 Microsoft Excel 2007 / 2010 开发应用程序级别的 VSTO 4 插件。结果是使用 .Net 4 客户端配置文件的基于 Windows 窗体的 DLL。
现在我必须使用旧的 COM-DLL。设置引用并通过 .Net 中的 COM-Interop 访问 COM-Methods 是没有问题的。
但是我需要调用的(同步)方法可能需要一分钟或更长时间才能返回。
我知道你的答案:使用工作线程...
我使用任务并行库将持久操作放入工作任务中并保持 GUI (Excel) 响应。
但是:inprocess COM-Call(在工作任务/线程中)似乎仍然阻塞了我的 GUI 线程。
- 为什么?是因为 Excel 总是作为 STA(单线程单元)运行吗?
- 如何保持 Excel GUI 响应?
- 有没有办法让它真正异步?
感谢您的任何答案,
约尔格