使用Powershell啟用/關閉Windows功能


接上一篇博客,依舊是需要制作安裝包,需要開啟系統的MSMQ功能。這里就用到了dism.exe

DISM全稱是Deployment Image Servicing and Management(部署映像服務和管理),用於安裝、卸載、配置和更新脫機 Windows(R) 映像和脫機 Windows 預安裝環境 (Windows PE) 映像中的功能和程序包。

文件路徑"C:\Windows\System32\Dism.exe"

注意:Dism運行需要管理員權限 

可使用 Dism.exe /?查看詳細命令參數,Dism功能非常強大,這里我只介紹如何開啟和關閉Windows功能。

如果需要詳細的介紹,可以訪問

https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh824821(v=win.10)?redirectedfrom=MSDN

https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh825265%28v%3dwin.10%29

使用下面這個命令,可以查看Windows功能列表

1 dism /online  /Get-Features

運行以后,部分截圖如下

我這里需要安裝 消息隊列,對應的功能名稱是MSMQ-Container,MSMQ-Server。對應控制面板截圖如下

輸入以下命令

1  Dism /Online /Enable-Feature /FeatureName:MSMQ-Container
1  Dism /Online /Enable-Feature /FeatureName:MSMQ-Server

執行如下

安裝完成后,就可以在控制面板看到如下結果,代表已經啟用了

禁用Windows服務,把/Enable-Feature換成/Disable-Feature就行了。

注意,記得這里加上/NoRestart,否則會等待輸入確認是否重啟電腦,這樣就不能自動化執行下面的命令了。

1 Dism /Online /Disable-Feature /FeatureName:MSMQ-Container /NoRestart
2 Dism /Online /Disable-Feature /FeatureName:MSMQ-Server /NoRestart

卸載完成后, 再設置重啟就行了

1 shutdown -r -t 0

重啟完就可以看到消息隊列功能已經關閉了

這樣就可以在制作安裝包時,自動啟用或禁用Windows功能了。

有的時候需要離線安裝,可以運行以下 DISM 命令來安裝MSMQ-Server:

 從D:\sources獲取安裝文件,然后把映像裝載到D:\offline,再開始執行安裝。

1 DISM /Image:D:\offline /Enable-Feature /FeatureName:MSMQ-Server /All /LimitAccess /Source:D:\sources

使用 /All 啟用指定的功能的所有父功能。

使用 /LimitAccess 以防止 DISM 與 Windows Update/WSUS 聯系。

使用 /Source 指定離線安裝包的目錄

一般需要離線安裝的,可能就是.Net Framework 3.5了。這個安裝包的位置位於Windows安裝鏡像的"sources\sxs"目錄下,名稱是"microsoft-windows-netfx3-ondemand-package.cab"

假設Windows安裝鏡像解壓的目錄是D:\Windows,則可以使用以下命令安裝Net35

DISM /Image:D:\offline /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:D:\Windows\sources\sxs

注意:請先創建D:\offline目錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM