我正在尝试测试我的WinForm应用程序作为构建的一部分(作为服务运行)。我正在使用GetDesktopWindow和EnumChildWindows来查找我感兴趣的控件。当我在控制台,调试器等的交互式会话中运行它时,这非常有效。但是当作为构建的一部分运行时未能找到任何控件。在作为服务运行时,我可以使用什么作为查找所有窗口的替代方法?
答案 0 :(得分:1)
通常情况下,Windows服务根本不允许与桌面交互(自Windows Vista引入以来) - 您是否考虑过将构建过程更改为计划任务?为什么你还在使用GetDesktopWindow?如果您想要枚举所有桌面窗口以找到您的应用程序,这听起来像是在尝试做一些奇怪的事情。
答案 1 :(得分:0)
您可以(如果您拥有相应的访问权限)在默认的交互式桌面上使用EnumDesktopWindows。