自己ATL做的word插件如何继承保存事件

boylafong 2013-12-26 03:10:37
用VC做的word插件,在word保存数据的时候,如何触发自己的事件?比如用户保存或者另存,弹出一个MESSAGEBOX
...全文
183 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
许文君 2013-12-27
  • 打赏
  • 举报
回复
fishion 2013-12-27
  • 打赏
  • 举报
回复
这个更好http://support.microsoft.com/kb/309294/zh-cn
fishion 2013-12-27
  • 打赏
  • 举报
回复
查看下ApplicationEventsX之类相关的资料 http://support.microsoft.com/kb/183599
许文君 2013-12-27
  • 打赏
  • 举报
回复
恭喜LZ
boylafong 2013-12-27
  • 打赏
  • 举报
回复
引用 3 楼 xuddk727 的回复:
处理DocumentBeforeSave事件 http://support.microsoft.com/viewkb/viewkb.aspx?contentid=2193786
引用 2 楼 fishion 的回复:
这个更好http://support.microsoft.com/kb/309294/zh-cn
终于解决了,其实接口DocumentBeforeSave早已经写好,只是一直不调用,原来是一个参数设置不对,解决方法如下: 0x08这个参数,写成其他的都没用,可是不知道为什么会是8 SINK_ENTRY_INFO(6, __uuidof(MSWORD::ApplicationEvents2),0x08, OnDocumentBeforeSave, &OnDocumentBeforeSaveInfo) 疑惑: 下面是IApplicationEvents2的函数,可以看到DocumentOpen 在4,按道理DocumentBeforeSave 应该是7啊。 virtual HRESULT __stdcall Startup ( ) = 0; virtual HRESULT __stdcall Quit ( ) = 0; virtual HRESULT __stdcall DocumentChange ( ) = 0; virtual HRESULT __stdcall DocumentOpen ( struct _Document * Doc ) = 0; virtual HRESULT __stdcall DocumentBeforeClose ( struct _Document * Doc, VARIANT_BOOL * Cancel ) = 0; virtual HRESULT __stdcall DocumentBeforePrint ( struct _Document * Doc, VARIANT_BOOL * Cancel ) = 0; virtual HRESULT __stdcall DocumentBeforeSave ( ..... 不过问题已经解决了,谢谢你们。

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧