【问题标题】:capturing text from text editors [duplicate]从文本编辑器捕获文本[重复]
【发布时间】:2013-04-15 11:00:39
【问题描述】:

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

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

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

【问题讨论】:

    标签: .net


    【解决方案1】:

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

    Here's an example for setting a global hook in C#

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2012-12-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-22
        相关资源
        最近更新 更多