麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > PowerShell > 正文

PowerShell隱藏不顯示窗口的多種方法

2020-10-29 20:57:26
字體:
供稿:網(wǎng)友

啟動(dòng)PowerShell時(shí)隱藏自己的窗口

假如我在計(jì)劃任務(wù)中定時(shí)通過Powershell.exe來執(zhí)行一個(gè)腳本文件,我想隱藏這個(gè)窗口,此時(shí)我們可以考慮使用PowerShell.exe的選項(xiàng)參數(shù):

復(fù)制代碼 代碼如下:

-WindowStyle
 將窗口樣式設(shè)置為 Normal、Minimized、Maximized 或 Hidden。

復(fù)制代碼 代碼如下:

PowerShell.exe -WindowStyle Hidden -file '您的腳本.ps1'

在PowerShell啟動(dòng)其它進(jìn)程時(shí)隱藏窗口

這個(gè)需求也能理解:

復(fù)制代碼 代碼如下:

Start-Process notepad.exe -WindowStyle Hidden

上面的腳本會(huì)啟動(dòng)一個(gè)隱藏的記事本程序。

使用PowerShell隱藏其它進(jìn)程的窗口

這是一個(gè)奇葩的需求,但是用戶也有一番自己的理由:

@scl95tx如是說:

我已經(jīng)實(shí)現(xiàn)了一個(gè)24小時(shí)不間斷的Powershell腳本,有很多數(shù)據(jù)通過write-host命令輸出到控制臺(tái)(需要隨時(shí)查看這些數(shù)據(jù),確保server運(yùn)行正常,所以后臺(tái)運(yùn)行我先不考慮),如果(由于操作失誤)誤點(diǎn)擊控制臺(tái)窗口,那么腳本就會(huì)停止執(zhí)行,是否有辦法把控制臺(tái)隱藏起來,如果我想查看腳本的運(yùn)行情況,再把控制臺(tái)調(diào)出來:也就是有隨時(shí)隱藏和調(diào)出來控制臺(tái)的辦法嗎?

這需求合情合理啊,接下來我們解決這個(gè)問題:

復(fù)制代碼 代碼如下:

Add-Type @'
[DllImport("user32.dll")]
public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
'@ -name “Win32ShowWindowAsync” -namespace Win32API
Function Set-ProcessWindowStyle
{
    param(
     [Parameter(
     Mandatory=$true,
     ValueFromPipeline=$true)]
    [System.Diagnostics.Process]$Process,
    [ValidateSet("Show", "Minimized","Maximized","Hidden")]
    [string]$WindowStyle="Show"
    )
        $WinStateInt = 1
       switch($WindowState)
       {
        "Hidden"       {$WinStateInt =  0}
        "Show"     {$WinStateInt =  1}
        "Maximize"   {$WinStateInt =  3}
        "Minimize"   {$WinStateInt =  6}
        }
    [Win32API.Win32ShowWindowAsync]::ShowWindowAsync($Process.MainWindowHandle,$WindowState)
}

寫完上面的腳本后,我滿心喜悅地進(jìn)行測(cè)試,隱藏窗口成功:

復(fù)制代碼 代碼如下:

Get-Process notepad | Set-ProcessWindowStyle -WindowStyle Hidden

可是當(dāng)我嘗試調(diào)出隱藏的窗口時(shí),執(zhí)行返回false。
復(fù)制代碼 代碼如下:

PS> Get-Process notepad | Set-ProcessWindowStyle -WindowStyle Show
False

對(duì)此我深表遺憾,當(dāng)窗口被隱藏后,進(jìn)程的句柄值MainWindowHandle變成了0,0代表什么?

MSDN如是說:如果關(guān)聯(lián)進(jìn)程沒有主窗口,則 MainWindowHandle 值為零。
結(jié)論:不要隱藏進(jìn)程的窗口,否則你將永遠(yuǎn)失去了操作該窗口的機(jī)會(huì)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 免费国产精品视频 | 国产高潮好爽好大受不了了 | 爽爽视频免费看 | 国产 一区 精品 | 久久久久久久久亚洲精品 | 欧美一级黄色录像片 | 国产精品视频yy9299一区 | 国产精品99久久久久久久 | 精品三级内地国产在线观看 | 欧美日韩国产成人在线观看 | wwwav国产 | 中国产一级毛片 | 久久亚洲精品久久国产一区二区 | 国产精品久久久久久久av三级 | 亚洲视频成人 | 黄色国产在线观看 | 国产亚洲综合一区二区 | 最新中文字幕在线视频 | 姑娘第四集免费看视频 | 成人一区三区 | 国产精品www| 精品国产一区二区三区久久久蜜月 | 欧美成人小视频 | 中文有码一区二区 | 久久精品国产清自在天天线 | 美女视频免费一区二区 | 九九热精品在线 | 国产精品成人一区二区三区吃奶 | 中文字幕在线观看视频一区 | 色悠悠久久久久 | 亚洲最大久久 | 精品国产乱码久久久久久久 | 欧日韩在线视频 | 美女黄色影院 | 久久老司机 | 国产69久久精品成人看 | 羞羞答答tv| 欧美1区2区在线观看 | 日韩视频在线一区二区三区 | 免费看成人av | 九九热精品在线视频 |