使用Powershell ISE隐藏窗口?

时间:2013-03-20 10:37:22

标签: powershell window hide

我想使用Windows Powershell脚本来隐藏Windows 7任务栏或开始按钮。 在Delphi中,它将像这样工作:“ShowWindow(FindWindow('windowhandle'),SW_HIDE);”。在PowerShell中是否可以这样?我已经找到了那个模块但是有没有办法直接做到这一点?在此先感谢

1 个答案:

答案 0 :(得分:0)

我不知道你是否直接算这个,但你可以从PowerShell调用WinApi。

$definition = @"    
      [DllImport("user32.dll")]
      static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

      [DllImport("user32.dll")]
      [return: MarshalAs(UnmanagedType.Bool)]
      static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);

      public static void Show(string wClass, string wName)
      {
         IntPtr hwnd = FindWindow(wClass, wName);
         if ((int)hwnd > 0)
            ShowWindow(hwnd, 1);
      }

      public static void Hide(string wClass, string wName)
      {
         IntPtr hwnd = FindWindow(wClass, wName);
         if ((int)hwnd > 0)
            ShowWindow(hwnd, 0);
      }
"@

add-type -MemberDefinition $definition -Namespace my -Name WinApi

[my.WinApi]::Hide('Notepad', 'Untitled - Notepad')

我无法使用Windows启动按钮(它只是禁用),但它适用于普通的Windows。