我在 VC6 中使用 Visual Assist,它似乎是一个强大的工具。作为一名程序员,我对实现感到好奇。我想知道VA如何获取源代码内容?似乎 VA 知道我的代码文件的每一行,即使它被修改并且没有保存到文件中。
我研究了一段时间的插件开发,VC6的插件接口没有提供这种接口来获取当前的代码内容,尤其是当源文件被修改而不保存时。
我猜 VA 使用了一些技巧来做到这一点,但它是什么?子类?
我在 VC6 中使用 Visual Assist,它似乎是一个强大的工具。作为一名程序员,我对实现感到好奇。我想知道VA如何获取源代码内容?似乎 VA 知道我的代码文件的每一行,即使它被修改并且没有保存到文件中。
我研究了一段时间的插件开发,VC6的插件接口没有提供这种接口来获取当前的代码内容,尤其是当源文件被修改而不保存时。
我猜 VA 使用了一些技巧来做到这一点,但它是什么?子类?
我猜他们使用某种“挂钩”技术来监控源内容的变化。例如SetWindowLong
/SetWindowsHookEx
肯定 VA 是作为一个 Visual Studio 插件实现的,我想它可以访问某种 Visual Studio API,我想这会暴露代码编辑器内容等内容。
有关更多信息,请参阅此链接:http: //www.microsoft.com/downloads/details.aspx? FamilyId=59EC6EC3-4273-48A3-BA25-DC925A45584D&displaylang=en
hth