使用Microsoft.Office.Interop.Word从c#打开docx,并在关闭msword后保存更改

使用Microsoft.Office.Interop.Word从c#打开docx,并在关闭msword后保存更改,c#,ms-word,docx,savechanges,C#,Ms Word,Docx,Savechanges,我正在使用Microsoft.Office.Interop.Word打开我的docx,代码如下: Microsoft.Office.Interop.Word.Application ap = new Microsoft.Office.Interop.Word.Application(); Document document = ap.Documents.Open(System.Windows.Forms.Application.StartupPath + "\\MSWordFile.docx"

我正在使用Microsoft.Office.Interop.Word打开我的docx,代码如下:

 Microsoft.Office.Interop.Word.Application ap = new Microsoft.Office.Interop.Word.Application(); Document document = ap.Documents.Open(System.Windows.Forms.Application.StartupPath + "\\MSWordFile.docx"); 
但我希望当用户保存并关闭打开的msword时,我的应用程序可以通过一些事件检测到它,并执行诸如getchanges之类的操作并将其保存到服务器


有什么想法吗?

您需要监视文件系统级别的文件更改。您可以监视文档。通过向
DocumentBeforeClose
事件的
ap
对象添加事件处理程序,从代码中关闭事件。请注意,无法确定用户是否会在事件触发时允许文档关闭,因此事件应检查文档是否仍在
ap.Documents
集合中。还不确定是否会立即释放文件锁…您需要监控文件系统级别的更改。您可以监控文档。通过向
DocumentBeforeClose
事件的
ap
对象添加事件处理程序,从代码中关闭事件。请注意,无法确定用户是否会在事件触发时允许文档关闭,因此事件应检查文档是否仍在
ap.Documents
集合中。也不确定文件锁是否会立即释放。。。