为了账号安全,请及时绑定邮箱和手机立即绑定

WinForm设置ShowInTaskBar=false无法正常执行API

WinForm设置ShowInTaskBar=false无法正常执行API

慕村9548890 2018-11-01 05:02:26
程序只启动一个窗口,如果再次启动则激活以前运行的窗口,大部分功能我已经实现,但是如果设置ShowInTaskBar为false就运行不正常了,经过测试问题如下:winForm中如果设置ShowInTaskBar为false,API函数为什么不能正常的执行?如果为true运行正常。还有一个问题,winForm中如果设置ShowInTaskBar为false,使用process.MainWindowHandle窗口句柄为0,如果设置为true,也就是显示任务栏按钮,可以得到窗口句柄。已经通过使用api得到窗口句柄了,但是其它的api函数还是运行不正常。详细可以参考:http://www.cnblogs.com/houleixx/archive/2008/04/15/StartOnly.html
查看完整描述

2 回答

?
萧十郎

TA贡献1815条经验 获得超12个赞

IntPtr handler = FindWindow(null, "Form1");

MainWindowHandle 是空,说前 MainWindow就是空了,MainWindowTitle当然就是空的,你用窗口标题名就OK,我测试了。


查看完整回答
反对 回复 2018-11-02
?
开满天机

TA贡献1786条经验 获得超12个赞

ShowInTaskBar=false;不能执行API,是转为 false时句柄发生了改变,变为true时又会发生改变。

只需要重新获取下 句柄就可以了。


查看完整回答
反对 回复 2018-11-02
  • 2 回答
  • 0 关注
  • 508 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信