web-dev-qa-db-ja.com

Windows 7でPowerShellまたはコマンドラインを使用してWindowsの機能をオンまたはオフにするにはどうすればよいですか?

Windows XPではsysocmgr、サーバー2008ではservermanagercmdに対してスクリプトを作成しましたが、Server 2008 R2に機能をインストールするには、新しいPowerShellモジュールservermanagerを使用する必要があることがわかりました。 Windows 7でも同じモジュールを使用すると思いますが、それはありません。

Windows 7でコマンドラインまたはPowerShellを使用してWindowsの機能をインストールするにはどうすればよいですか?

11
Chris Magnuson
13
Trondh

truepowershellエクスペリエンスの場合、8.0用のWindows AIKをダウンロードしてdism moduleを使用する必要があります。それは

C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Deployment Tools\<Arch>\DISM

そして、あなたはただpowershellをそのフォルダに向けることができます

Import-Module C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Deployment Tools\<Arch>\DISM

<Arch>を、Powershellが実行されているマシンのアーキテクチャーに置き換えてください。そのDISMフォルダーは、必要に応じてコピーしてコンピューターに再配布することもできます(機能について言えば、再配布が実際に許可されているかどうかはわかりません。 。

Windowsのオプション機能を破棄する特定のコマンドは次のとおりです。

Get-WindowsOptionalFeature -Online | where FeatureName -eq mediacenter

here のようにMicrosoft.DISM.Commands.BasicFeatureObjectを返します。そこから、stateプロパティを無効に設定できます。

$(Get-WindowsOptionalFeature -Online | where FeatureName -eq mediacenter).state = 
    [Microsoft.DISM.Commands.FeatureState]::Disabled

そしてさようならメディアセンター。もちろん、これは管理者特権のプロンプトから実行する必要があり、-Onlineスイッチは、オフラインイメージではなく、現在実行中のWindowsを指します。

また、このモジュールにはWMF 3.0が必要であり、thatには.NET 4.0、FYIのみが必要です。

6
MDMoore313

Windows 7/8からPowerShellを実行しようとすると、次のようになります。

Get-WindowsFeature:指定されたコマンドレットのターゲットをWindowsクライアントベースのオペレーティングシステムにすることはできません。

dismが動作する唯一の方法です。

4
n1nj4

ServerManager機能を手動で追加します。次に、servermanager-moduleを追加できます。

import-module servermanager

get-windowsfeature

2
Jørgen
ocsetup.exe /?

Dismに加えて、Windows VistaとWindows Server 2008にデフォルトでインストールされる ocsetup を使用することもできます。これら3つすべてで機能するスクリプトを作成する場合、これはおそらく行く方法。

2
Chris Magnuson