微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Process.GetCurrentProcessMainWindowHandle返回零

我试图获得我的C#应用​​程序的主窗体(应用程序只有一个窗体)的窗口句柄(HWND)。

互联网上的一些解决scheme显示我可以使用:

Process.GetCurrentProcess().MainWindowHandle

获取我的应用程序当前进程的窗口句柄。 但是这个值总是零,有什么不对?

如何命名已部署的应用程序?

托pipeC ++方法命名

某些应用程序停止所有获取击键的尝试

File.copy以及作为stream打开的文件,并写入networking文件挂起到本地机器

如何在勾选列表框中灰显项目

Linux单声道等效的.NET Windows服务

带有“validation”和“取消”button的消息框

System.Net.sockets – 定义一个超时? (C#)

“永远在上面”的对面

当Windows任务计划程序启动程序时如何获取应用程序文件

MSDN说:

主窗口是当前具有焦点的进程打开的窗口(TopLevel窗体)。 您必须使用Refresh方法刷新Process对象,以获取当前主窗口句柄(如果已更改)。

只有当进程具有图形界面时,进程才具有与其关联的主窗口。 如果关联的进程没有主窗口,则MainWindowHandle值为零。 对于已经隐藏的进程,也就是在任务栏中不可见的进程,该值也为零。 对于在任务栏最右侧的通知区域中显示为图标的进程,可能会出现这种情况。

请参阅http://msdn.microsoft.com/zh-CN/library/system.diagnostics.process.mainwindowhandle(v=vs.110).aspx

尝试使用

System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐