在VSTO插件中捕获Windows消息

时间:2012-08-09 20:29:23

标签: c# vsto

有没有办法在单词中捕获Windows消息(我试过覆盖WinProc ......不行)?我有一个单词VSTO插件,我正在尝试与外部通信...理想情况下,我想从一个应用程序发布消息,在单词中捕获该消息,然后执行相应的响应......

2 个答案:

答案 0 :(得分:2)

由于互操作程序集未公开此功能,因此我不建议使用此方法。您应该只尝试通过这些API与Office应用程序进行交互。

如果您只需要进程间通信并且您可以控制发送方和接收方,我建议使用套接字连接或管道。 Word将处理它自己的Windows消息,干扰该过程不是一个好主意。

答案 1 :(得分:1)

避免Word中的进程间通信(这对于使用UAC的权限来说是一团糟)我提出了自己的解决方案:

我在我的单词VSTO插件的实例中设置了一个钩子,带有SetWinEventHook()(挂钩SYS_ALERT)...我只是监视创建的新窗口(OB_CREATE),如果它是一个使用解释过的摄像头的应用程序然后我关闭当前运行DS中的图形,释放相机并允许它在具有焦点的应用程序中使用。我使用相机的每个程序都会实现这个类挂钩。

更好的想法欢迎......