0

我想以与自动化工具在其“UI Map”功能中访问它们的方式类似的方式访问对象及其属性。我假设有一个程序集引用可以访问正在运行的进程以及该进程存在的任何对象。

具体来说,我需要在另一个正在运行的应用程序中访问一些标签控件文本属性。

另外,很抱歉,如果这是重复的 - 我环顾四周,但我不确定哪些关键字可以让我得到我需要的东西。

4

2 回答 2

3

这不是 C# 中的常见做法。您正在寻找的术语是“窥探”另一个窗口/应用程序/进程。StackOverflow 中有几个资源在这里讨论这个问题。例如:

如何在我的 C# 应用程序中获得类似于 Spy++ 的功能?

要访问另一个 Win32 窗体中的控件,您需要查找该元素的句柄。

于 2013-01-29T16:05:45.593 回答
1

对于 WPF 应用程序,.NET 4.5 中的 UI 自动化库使这种方式更简单:http: //msdn.microsoft.com/en-us/library/ms747327.aspx

对于较旧的 winforms 应用程序,您必须实际使用 User32 API 上的 pInvoke。皮特在对您的问题的评论中给您的示例链接将帮助您朝着这个方向前进:http ://www.pinvoke.net/default.aspx/user32.enumwindows

于 2013-01-29T16:05:00.960 回答