C# 具有角色客户端的窗口没有使用MSAlayer的控件

C# 具有角色客户端的窗口没有使用MSAlayer的控件,c#,winapi,controls,findwindow,C#,Winapi,Controls,Findwindow,我正在使用MSAlayer界面获取一些窗口的控件。我在带有MSAlayer界面的Inspect.exe中查找,基本上窗口有文本框、复选框和两个按钮,但是!无法在此窗口中找到此按钮,并且此窗口具有客户端角色。这是什么意思?如何在具有角色客户端的窗口中找到文本框和按钮控件?我还尝试使用WinApi访问其中的控件,但EnumChildWindows无法在其中找到任何控件。有人能解释一下吗,谢谢。你说找不到是什么意思?IAccessible::get_accChildCount是否表示没有孩子?另外,既

我正在使用MSAlayer界面获取一些窗口的控件。我在带有MSAlayer界面的Inspect.exe中查找,基本上窗口有文本框、复选框和两个按钮,但是!无法在此窗口中找到此按钮,并且此窗口具有客户端角色。这是什么意思?如何在具有角色客户端的窗口中找到文本框和按钮控件?我还尝试使用WinApi访问其中的控件,但EnumChildWindows无法在其中找到任何控件。有人能解释一下吗,谢谢。

你说找不到是什么意思?IAccessible::get_accChildCount是否表示没有孩子?另外,既然您使用的是C,为什么不使用UI自动化而不是MSAA?@andlabs您好。问题如下,我使用的是firefox引擎gecko上的简单程序。在某些站点上,可以选择ssl证书来使用它,而不是登录/通过。因此,基本上会出现一个名为User Identification Request的窗口,其中包含ok cancel按钮和一个组合框,您可以在其中选择证书。不可能找到我的意思是,在inspector中我可以找到这个窗口,但是!无法找到子控件、按钮、组合框和文本标签。Inspector工具显示有7个子对象objects@andlabs但我只能查看“标题”。实际上,我想我会做一些截图来澄清这一点。我在Inspect工具中尝试了UI自动化,结果是一样的。另外,如果在实际的firefox浏览器中出现相同的窗口,我可以使用Inspect工具找到所有控件,无论MSAA/Ui是否自动。同时,使用引擎的程序也被管理,这是否会导致这样的错误?请这样做;这将有助于解释发生了什么。如果某个对话框无法正确访问,则可能是Firefox中的一个错误。@实际上,它不在Firefox上,而是在使用Firefox引擎的第三方应用程序上。此应用程序是在托管代码上编写的