我正在尝试开发一个实用程序(使用系统 Hook ),它像扩展器一样工作(用户选择一些文本并按下热键,它就会扩展)。它应该适用于 Visual Studio。
我想使用 Windows API 来实现它,因为我想开发一个可以在全局范围内与任何应用程序一起使用的应用程序(无论您使用的是 VS 还是写字板,都应该获得相同的功能)。
我已经能够使用 EM_ GETSEL 和 EM_REPLACESEL 消息通过记事本、写字板等成功地做到这一点。但是这些 API 不适用于 Visual Studio 或 ms word。
我应该使用哪些 API 才能做到这一点 1.检测选择了什么文本。 2. 将输入发送给编辑器。
我正在用 C# 编程。如果您一定知道我想做什么……我正在尝试制作适用于任何编辑器的 ZenCoding 通用端口。因此,我们将不胜感激。
最佳答案
对于第 2 部分,您可以尝试使用 Windows Input Simulator这是一个开源项目,我刚刚发布到 Codeplex 以包装 Win32 SendInput。与仅模拟文本输入的 SendKeys 不同,您实际上可以将真实的击键和复杂的和弦模拟到事件窗口。
在您的情况下,如果用户可以使用键盘执行任务,则此项目将为您提供帮助,否则您需要寻找其他解决方案。
希望这对您有所帮助。
关于c# - 如何使用 Windows API 将输入发送到 Visual Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1853043/