Vb.net Me.Activate()在某些PC上不起作用';s

Vb.net Me.Activate()在某些PC上不起作用';s,vb.net,Vb.net,我正在VB.NET表单中使用SHDocVw.InternetExplorer(在IE窗口中单击)。 然后我必须把注意力放回我的状态,通过以下方式做到: Me.Activate() 在我的开发人员PC上,这可以正常工作,但在另一台PC上,窗体不会激活-只是在windows任务栏上闪烁。 尝试使用SetForeGroundIndow(iser32)方法时也没有运气。 为什么不让我工作。在另一台电脑上激活?用另一种方法解决: Me.TopMost = True 然后,当我必须激活我的表单时,我使用

我正在VB.NET表单中使用SHDocVw.InternetExplorer(在IE窗口中单击)。 然后我必须把注意力放回我的状态,通过以下方式做到:

Me.Activate()
在我的开发人员PC上,这可以正常工作,但在另一台PC上,窗体不会激活-只是在windows任务栏上闪烁。 尝试使用SetForeGroundIndow(iser32)方法时也没有运气。 为什么不让我工作。在另一台电脑上激活?

用另一种方法解决:

Me.TopMost = True

然后,当我必须激活我的表单时,我使用鼠标点击模拟(user32)。

如果您的应用程序未激活(另一个程序有焦点,而不仅仅是另一个表单),您将看到闪烁。好的,但在我的开发人员PC上,这是可行的…您在windows的哪些版本上观察到不同的行为?在windows 8中,在任务栏上闪烁将是预期的行为。真正的问题是为什么它会集中在你的电脑上。这是一个“如果每个应用程序都这样做了会怎么样”的例子-他们都会努力争取在顶部,因此在更高版本的windows中更改为只在任务栏上闪烁。我想这是由于调试模式,但当我在VS后面运行exe时(不是在调试模式下),它也可以正常工作。