C#以编程方式禁用任务栏功能

时间:2010-08-05 15:40:37

标签: c# windows taskbar

当您打开Internet Explorer或Mozilla时,会弹出任务栏中的新任务。

右键单击此任务栏项时,它说

恢复,移动,调整大小,最小化,最大化,关闭。

现在我的应用程序不使用大小,最小化,最大化或关闭。

有人可以给我一个快速领导或抬头以禁用它们吗?

提前致谢 -Kevin

1 个答案:

答案 0 :(得分:2)

您可以使用SetWindowLong函数(http://msdn.microsoft.com/en-us/library/ms633591(VS.85).aspx)。

[DllImport("user32.dll", SetLastError = true)]
private static extern int GetWindowLong(IntPtr hWnd, int nIndex);
[DllImport("user32.dll")]
private static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);

int GwlStyle = -16;       // GWL_STYLE 
int WsSysMenu = 0x80000;  // WS_POPUP

var hwnd = new WindowInteropHelper(this).Handle;
SetWindowLong(hwnd, GwlStyle, GetWindowLong(hwnd, GwlStyle) & ~WsSysMenu);

检查上面的链接,了解有关GwlStyle和WsSysMenu的值的更多信息。这将使窗口成为弹出窗口的样式。但是,这也会从右上角删除关闭,最大化和最小化按钮。