我尝试使用以下代码从显示的 Word 应用程序窗口中获取托管控件:
Process[] processes = null;
processes = Process.GetProcessesByName("WINWORD");
Process wordProc = processes[0];
Control wordControl = Control.FromHandle(wordProc.MainWindowHandle);
不幸的是 wordControl 始终为空...据我所知,如果没有找到与句柄相关的控件,FromHandle 将返回空。但实际上我猜应该有一个相关的控件,因为我可以在我的屏幕上看到窗口。
因此我的问题是,如果我在尝试获取手柄或控件时做错了什么。或者,也许我的一般方法不适用于某些基于 .NET / Windows 环境中某处的目前未知的原因。