Como ativar ou desativar os recursos do Windows usando o PowerShell ou a linha de comando no Windows 7?

11

Eu tenho scripts sysocmgrno Windows XP, servermanagercmdno servidor 2008 e agora acho que preciso usar um novo módulo do PowerShell servermanagerpara instalar recursos no Server 2008 R2 e, portanto, esperaria usar o mesmo módulo no Windows 7, mas não é há.

Como posso instalar os recursos do Windows usando a linha de comando ou o PowerShell no Windows 7?

Chris Magnuson
fonte
O tempo finalmente forneceu uma maneira de usar o PowerShell, minha resposta está abaixo.
MDMoore313

Respostas:

6

Para uma verdadeira experiência com PowerShell, é necessário baixar o Windows AIK for 8.0 e usar o dism module. É encontrado em

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

e você pode simplesmente apontar PowerShell para essa pasta com

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

Certifique-se de substituir <arch> pela arquitetura do PowerShell da máquina em execução. Essa pasta DISM pode até ser copiada e redistribuída para máquinas, se necessário (falando sobre funcionalidade, não sei se a redistribuição é realmente permitida pela Microsoft).

O comando específico para descartar um recurso opcional do Windows é

Get-WindowsOptionalFeature -Online | where FeatureName -eq mediacenter

Isso retornará a Microsoft.DISM.Commands.BasicFeatureObject, como visto aqui . A partir daí, você pode definir a statepropriedade como desativada, como

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

e adeus centro de mídia. Obviamente, isso deve ser executado a partir de um prompt elevado, e a -Onlineopção se refere ao Windows em execução atual, em oposição a uma imagem offline.

Além disso, este módulo requer WMF 3.0 e que requer o .NET 4.0, apenas FYI.

MDMoore313
fonte
1
Consegui rodar Enable-WindowsOptionalFeature -FeatureName NetFx3 -Onlineem uma máquina Windows 8.1 sem instalar o AIK. No entanto, eu tinha a visualização do WMF5 instalada; quem sabe isso fornece? O módulo é carregado deC:\windows\system32\windowspowershell\v1.0\Modules\Dism\Dism.psm1
bshacklett 23/03
4

Tentar executar o PowerShell a partir do Windows 7/8 irá obter apenas isso:

Get-WindowsFeature: O destino do cmdlet especificado não pode ser um sistema operacional baseado no cliente Windows.

dism é a única maneira que eu descobri que funciona.

n1nj4
fonte
2

Adicione o recurso ServerManager manualmente. Então você pode adicionar servermanager-module:

servermanager do módulo de importação

get-windowsfeature


fonte
1
como você adicionaria o recurso ServerManager separadamente?
Fschwiet
2
Isso poderia funcionar para Windows 2008R2 e mais recente, mas não para o Windows 7.
Trondh
2
ocsetup.exe /?

Além do dism, parece que você também pode usar o ocsetup, instalado por padrão no Windows Vista e no Windows Server 2008. Se você estava procurando um script que funcionasse em todos os três, provavelmente seria o caminho a seguir.

Chris Magnuson
fonte
-1

Para a parte do PowerShell, abra o prompt 'Windows Powershell Modules' e digite

PS1> Add-WindowsFeature [nome do recurso]

por exemplo

Servidor SMTP Add-WindowsFeature

Get-WindowsFeature mostra os nomes de todos os recursos disponíveis

user25572
fonte
1
Tenho certeza de que isso só funciona no Windows Server 2008 R2.
Jeffery Hicks
Jeffery está correto, isso não funciona no Windows 7 por padrão. Se você conhece uma maneira de fazê-lo funcionar, eu gostaria de saber.
9139 Chris Magnuson
-1

Você pode usar uma sessão remota do Windows 7 para uma caixa do Windows Server 2008 R2 e executar o Add-WindowsFeature. Não consegui encontrá-lo no Win7, mesmo com o RSAT instalado.

Jeffery Hicks
fonte
1
Isso não adicionaria o recurso à caixa do Windows Server 2008 R2 e não à instância local do Windows 7? Caso contrário, explique.
22620 Chris Magnuson