繁体   English   中英

永久隐藏或将任务栏移出屏幕窗口 10 LTSB ENT

[英]Permanently hide or move taskbar off screen windows 10 LTSB ENT

我们需要隐藏任务栏和开始菜单。 我们有一个全屏运行的应用程序,它是一个触摸屏应用程序。 我们的触摸屏应用程序 99.9999% 始终在屏幕上,覆盖整个屏幕。 然而,它是一个复杂的多媒体应用程序,在极少数情况下,我们发现它会崩溃并暴露桌面。 我们有一个定制的 Win10 LTSB ENT 版本,它强大且合适,但我们想更进一步。 我们想从桌面上完全删除任务栏(“隐藏”)。

我们可以使用下面的代码隐藏任务栏,但它会在 5 秒后返回。 某些东西不断撤消我们的“隐藏”并在我们不做任何事情的情况下恢复任务栏。

难道我做错了什么? Windows 操作系统中是否有需要调整的服务或机制?

private static void setTaskBar(bool hide)
{
  IntPtr window = Program.FindWindow("Shell_traywnd", "");
  if (hide)
    Program.SetWindowPos(window, IntPtr.Zero, 0, 0, 0, 0, 128U);
  else
    Program.SetWindowPos(window, IntPtr.Zero, 0, 0, 0, 0, 64U);

[DllImport("user32", SetLastError = true)]
private static extern IntPtr FindWindowEx(
  IntPtr hWndl,
  IntPtr hWnd2,
  string lpsz1,
  string lpsz2);
}

[DllImport("user32")]
private static extern bool SetWindowPos(
  IntPtr hWndl,
  IntPtr hWndInsertAfter,
  int X,
  int Y,
  int cx,
  int cy,
  uint uFlags);

任务栏有点特别,当其他窗口进入和退出全屏等时,它会从窗口管理器接收消息,并相应地进行调整。

弄乱外壳是错误的解决方案。 更好的解决方案是启动程序的另一个实例,该实例只有一个全屏窗口,除了等待真实实例崩溃,然后在需要时重新启动它之外什么都不做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM