隐藏表单从alt-tab而不丢失控制框

时间:2015-04-19 17:20:31

标签: c# windows forms winapi

我正在使用 Windows API 隐藏第三方应用表单
从alt-tab使用这段代码:

[DllImport("user32.dll")]
public static extern int SetWindowLong(IntPtr window, int index, int value);
[DllImport("user32.dll")]
public static extern int GetWindowLong(IntPtr window, int index);

int GWL_EXSTYLE = -20;
int WS_EX_TOOLWINDOW = 0x00000080;
int WS_EX_APPWINDOW;

private void Hide_AltTab(IntPtr x)
{
     //Get and store Current Style before Hide
     WS_EX_APPWINDOW = GetWindowLong(Handle, GWL_EXSTYLE);
     //Hide
     SetWindowLong(x, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
}

private void Show_AltTab(IntPtr x)
{
     //Restore Default Style
     SetWindowLong(x, GWL_EXSTYLE, WS_EX_APPWINDOW);
}

此代码工作正常从alt-tab中隐藏表单 我的问题是:
当我从alt-tab隐藏表单时,控制框消失了

enter image description here

AFTER

enter image description here

那么 WS_EX_TOOLWINDOW中的值是什么,我必须用来隐藏alt-tab中的 form 并保留ControlBox?

0 个答案:

没有答案