2

我需要挂钩托管(C#、C++/CLI)进程,我需要查找并发送有关它有多少个窗口(其关联的控件及其属性)的信息到用 C# 托管代码编写的目标应用程序。

为此我需要做什么?我是否需要探索该托管进程的 IAT(导入地址表)和 EAT(导出地址表)?我需要用 C++ 编写注入器 DLL 吗?除了改变 IAT 和 EAT 之外,我还需要什么?

[编辑] 我需要将托管运行进程附加到应用程序(它将托管或附加其他进程)。附加进程后,我需要获取与该进程的窗口关联的所有控件的属性。

我将逐个迭代该附加进程的窗口,将枚举与该窗口关联的所有控件(将获取控件的 id、名称、颜色、位置、大小等),并将整个信息发送到其他应用程序或应用程序它附加了其他应用程序(实际上该应用程序作为主机再次需要使用该信息重绘相同的控件,不要问我为什么需要这样做:-))

问候乌斯曼

4

2 回答 2

1

请参阅此http://www.codeproject.com/Articles/463508/Net-CLR-Injection-Modify-IL-Codes-on-Run-time

您可以通过在运行时修改 IL 代码来做到这一点

此外,Profiler 界面是您的另一种方式

于 2012-09-24T10:21:06.137 回答
1

我相信这个问题的答案可能对你有所帮助:

如何利用反射打造“反射机器”

于 2011-03-13T16:58:08.117 回答