0

我在互联网上进行了研究,但我找不到。sqlassistant 之类的程序如何从其他文本编辑器(notepad++、sql management studio 等)捕获文本

例如,如果您在记事本++中按 ctrl + 鼠标左键单击,则 sql 助手会检测文本并将其重新绘制为蓝色并打开在其自己的窗口中单击的存储过程。

Hook api可以吗?我下载了许多用 c# 编写的 api 示例,但没有关于捕获文本的示例,是否可以使用托管代码?

4

2 回答 2

1

类似的程序使用常规的 Win32 API 调用来检查窗口上下文。他们使用全局键盘挂钩来检测按键,然后使用 GetActiveWindow 之类的调用来确定选择了哪种窗口/控件以及如何与之交互。

这是在 C# 中设置全局挂钩的示例

于 2013-04-15T11:03:28.547 回答
0

您可以使用 Win32 API 函数来获取对象/对象的内容 一些 win32 api 函数,如 getwindow-getwindowex-findwindow-findwindowex 等来自 user32.dll 可以在www.daneshjooyar.com有用,有一些关于使用 api 函数的视频在c#中

于 2013-04-15T11:10:31.410 回答