2011-12-30 204 views
1

我正在寻找一个.Net Windows应用程序,它将捕获用户如何使用另一个正在运行的应用程序。从另一个Windows应用程序捕获用户事件(按钮点击等)

这最简单的形式将记录哪些按钮被点击或菜单项被打开。捕获按钮文本或菜单文本就足够了。

我知道这可以通过听事件来完成,但不确定这个延伸有多远。在Windows中,您是否可以侦听其他应用程序事件,或者是否隐藏其他应用程序?

如果是这样,是否有任何.Net库我可以使用或开源项目来捕捉这些事件?进一步,将这些转化为通用事件(即时考虑许多应用程序可能触发特定于他们的事件,因此提取一般信息是关键)

如果不是,则是将我的代码与应用程序集成以获得访问权的唯一解决方案到那个应用程序事件?

非常感谢

+0

我曾经写道,在日志中记录用户的活动,即一个项目是什么窗口打开,他们正在键入的内容以及是否在任何地方点击。我不确定你是否可以扩展到能够说出他们特别要求的内容。 – ediblecode 2011-12-30 12:15:31

+0

你是如何得到这些信息的?你只能记录哪些窗口打开了,鼠标在哪里?我想这些事件将在Windows的水平。你是对的,但我想我正在寻找Windows中包含的信息。 – elliotcw 2011-12-30 12:23:00

+0

我创建了一个可以在后台运行并输出到txt文件的Windows服务。我认为'User32.dll'具有打开窗口和窗口内文本的功能。 – ediblecode 2011-12-30 12:30:47

回答

0

如果我正确理解您的文章,您需要类似Spy++的东西,可以挂钩Windows消息,并告诉你什么时候该消息被炒鱿鱼。

看一看这些链接:

  1. Deliver The Power Of Spy++ To Windows Forms
  2. Spying Window Messages from the Inside
  3. How can I get functionality similar to Spy++ in my C# app?
+0

惊人的东西!这些链接已被证明是非常宝贵的。谢谢。 – elliotcw 2012-01-18 13:58:13

+0

如果有人在这篇旧文章中绊倒了,并且正在寻找在第一个链接“交付电源......”中引用的文章,您将在2006年4月号中找到它。上面的链接将您带到主列表,但不再直接链接到文章或问题。 – Chris 2018-01-03 16:05:44

-1
private void CaptureCameraCallback() 

{ 

    using (CvCapture cap = CvCapture.FromCamera(CaptureDevice.Any, 1)) 

    { 

     while (true) 

     { 

      Bitmap bm = BitmapConverter.ToBitmap(cap.QueryFrame()); 

      bm.SetResolution(pctCvWindow.Width, pctCvWindow.Height); 

      pctCvWindow.Image = bm; 

     } 

    } 

} 
相关问题