如何使VB.net 2008应用程序专注于Windows 7?

时间:2012-01-19 20:46:04

标签: windows vb.net focus

我正在尝试在VB.net中创建一个应用程序,一旦发生某种情况(在这种情况下,正在创建一个文件),它就可以出现在前面。我尝试了以下代码,但只是导致Windows 7上的任务栏按钮闪烁:

Me.Activate()

我理解这个的原因,我完全理解为什么人们不希望任何随机应用程序窃取焦点(我也讨厌它)。这是一个非常有限的使用应用程序(实际上只有3台计算机正在使用它),在这种情况下用户希望应用程序在前面弹出(也可以选择将其关闭)。

如果仍然可以在Windows 7上做任何想法吗?

1 个答案:

答案 0 :(得分:3)

最简单的方法是更改​​三台计算机上的ForegroundLockTimeout注册表项。这会禁用阻止后台应用程序窃取焦点的Windows规则。显然,它将允许系统上的所有应用程序窃取焦点。

您还可以使用SPI_SETFOREGROUNDLOCKTIMEOUT SystemParametersInfo通过代码停用规则。例如,请参阅here