
我有一个应用程序,用户实际上并没有closures – 而不是closures整个应用程序,主窗口是隐藏的。 然后,当用户再次启动相同的应用程序时,第二个实例与第一个(已经运行的)实例进行通信,并且第一个实例尝试将主应用程序窗口置于前台。
问题是这主要是成功的,但有时会失败。 我已经完成了我的研究,似乎后台进程不能把他们的窗口放在前台,这是合理的。 解决的办法是从第二个实例调用AllowSetForegrounDWindow(这可以将一个窗口带到前台,因为用户已经启动了它),并给予该程序的第一个实例的权限。
我的问题是:我怎样才能确保我的代码工作? 我问这是因为我没有find一种方法来检查AllowSetForegrounDWindow调用是否有任何效果。 我不知道什么时候第一个实例不能设置前景窗口(因为它大部分是工作的,很less不会),所以我不知道如何检查一切工作是否正常。 任何IDes?
将多个键绑定到KeyDown事件(Shift + *(Asterisk))
只有在本地文件较旧时才能下载文件
file.copy以及作为stream打开的文件,并写入networking文件挂起到本地机器
什么时候我的进程被杀死了?
如何在C#中监视fileaccess
如何恢复尚未正确释放的COM对象?
SetSystemTime kernel32中的奇怪行为
AppDomain无法在x64平台目标中卸载
如何在鼠标指向窗口的顶部位置时触发事件?
在.NET中是否有一个文件扩展名分隔符字符常量?
AllowSetForegrounDWindow()有一个你可以检查的返回码:
如果调用进程不能设置前景窗口,该函数将失败。
当你的应用程序启动时,它应该能够设置前台窗口,所以AllowSetForegrounDWindow() 应该成功,你现有的应用程序的实例应该能够到达前面。
但是,没有办法保证这将始终工作。 你所能做的只是实现文件化的系统,你也可以。 在最糟糕的情况下,您现有的应用会在其他窗口后面打开,用户必须点击才能将其展示在前面。
总结以上是内存溢出为你收集整理的将窗口带到前台的问题全部内容,希望文章能够帮你解决将窗口带到前台的问题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)