2017-01-03 17 views
0

保存文件(故意使用)時,我想執行某個操作。
這與下面的代碼的所有作品:
Application.DocumentBeforeSave += new word.ApplicationEvents4_DocumentBeforeSaveEventHandler(ThisAddIn_BeforeSave);自動保存觸發`DocumentBeforeSave`事件 - 如何繞過這個?

只有一個問題,當一個變化就是文件和「自動恢復」功能保存這種變化使這個事件也觸發。

有沒有辦法繞過這個動作,或至少檢測它是否是自動保存?

回答

2

所以我設法在this網站上找到這個問題的答案。 本質上,這使我使用Word應用程序的VBA屬性。

object oBasic = Application.WordBasic; 
object fIsAutoSave = 
     oBasic.GetType().InvokeMember(
      "IsAutosaveEvent", 
      BindingFlags.GetProperty, 
      null, oBasic, null); 
if (int.Parse(fIsAutoSave.ToString()) == 1) 
    MessageBox.Show("Is AutoSave"); 
else 
    MessageBox.Show("Is regular save"); 

此解決方案似乎適用於Office 2007及以上版本。

相關問題