对于Windows服务,GetForegroundWindow始终返回0

时间:2011-03-17 14:16:31

标签: c# windows winapi windows-services

我编写简单的Windows服务并尝试获取活动窗口的hwnd

private int _hwnd;

[DllImport("User32.dll", SetLastError = true)]
public static extern int GetForegroundWindow();

private void timer1_Tick(object sender, EventArgs e)
{
     _hwnd = GetForegroundWindow();
}

_hwnd总是等于0。为什么?有没有办法获得正确的(!= 0)值?

1 个答案:

答案 0 :(得分:4)

在Vista和7中,服务无法与桌面交互。请参阅Interactive Services on MSDN