Windows 7 应用程序应该如何使用ForegroundLockTimeout注册表值?

Windows 7 应用程序应该如何使用ForegroundLockTimeout注册表值?,windows-7,registry,foreground,Windows 7,Registry,Foreground,如果一个应用程序调用并激活另一个应用程序,则可能存在被调用的应用程序未被带到前台的问题 一种是将注册表值设置为0,而不是默认的200000毫秒 应用程序应如何控制此注册表值?暂时更改它以实现解决方案,然后再将其更改回是可行的吗?动态地对注册表进行黑客攻击从来都不是一个可接受的解决方案。如果一个应用程序拥有前台窗口,那么它激活另一个应用程序的窗口不会有任何问题。它可以通过winapi函数显式完成。链接的MSDN页面还列出了确切的规则。还有助于查找SystemParameterInfo函数的SPI_

如果一个应用程序调用并激活另一个应用程序,则可能存在被调用的应用程序未被带到前台的问题

一种是将注册表值设置为
0
,而不是默认的
200000
毫秒


应用程序应如何控制此注册表值?暂时更改它以实现解决方案,然后再将其更改回是可行的吗?

动态地对注册表进行黑客攻击从来都不是一个可接受的解决方案。如果一个应用程序拥有前台窗口,那么它激活另一个应用程序的窗口不会有任何问题。它可以通过winapi函数显式完成。链接的MSDN页面还列出了确切的规则。还有助于查找SystemParameterInfo函数的SPI_SETFOREGROUNDLOCKTIMEOUT参数

有一个肮脏的非法黑客破坏了规则。除了提到它在.NET框架中实际使用之外,我不会详细介绍它。由于您的大多数问题都是.NET问题,我假设它适用,所以您可以使用Microsoft.VisualBasic.Interaction.AppActivate()方法。顺便说一句,没那么好用

请记住,用户绝对讨厌这种黑客行为。确保您的卸载程序正常运行。

有关详细信息,请参阅。