当前位置:  开发笔记 > 编程语言 > 正文

:: FindWindow从Service应用程序失败

如何解决《::FindWindow从Service应用程序失败》经验,为你挑选了2个好方法。

从服务应用程序调用时,Windows API :: FindWindow函数失败.GetLastError()也返回0(成功?).这是一些特权\访问权限问题吗?你认为这是设计问题,我应该使用另一种IPC方法吗?



1> 小智..:

leppie是对的,Windows服务通常在与桌面交互时被拒绝.您可以在XP和更早版本中绕过它,但在Vista及更高版本中无法做到.您最好将桌面和用户交互委派给GUI应用程序.请参阅此文档了解详细信息



2> Remy Lebeau..:

服务在会话0中运行.在XP及更早版本中,第一个登录用户也在会话0中运行,后续用户在会话1及更高版本中运行.如果服务设置为"与桌面交互",则它可以访问在会话0中运行的任何用户窗口.但是,从Vista开始,用户永远不再在会话0中运行.FindWindow()仅在调用Session的上下文中工作,因为不能跨会话边界访问窗口.

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有