如何正确对文件更改做出反应

Spo*_*ook 5 c# file vs-extensibility vsix

我正在编写一个Visual Studio编辑器插件.我希望编辑器的行为与其他编辑器类似:如果编辑的文件在IDE外部更改,我希望显示正确的对话窗口并重新加载文档(如果需要).

IVsPersistDocData接口包含的方法IsDocDataReloadableReloadDocData,但在调试过程中,他们从来没有在这种情况下调用.

有一个IVsFileChangeExIVsFileChangeEvents接口的组合,但对IDE外部更改文件的反应似乎是如此通用,我想我不应该手动监视编辑的文件.或者我应该?

Spo*_*ook 1

看来,实际上没有自动机制可以做到这一点并使用IVsFileChangeExIVsFileChangeEvents是唯一的解决方案。

http://blogs.msdn.com/b/dr._ex/archive/2005/11/01/487721.aspx

http://msdn.microsoft.com/en-us/library/Microsoft.VisualStudio.Shell.Interop.IVsFileChangeEx.aspx