Tente o link
add-pssnapin WebAdministration
Restart-WebItem 'IIS:\AppPools\DefaultAppPool'
Aqui está a situação: Estou tentando usar o PowerShell para reciclar automaticamente um AppPool (Windows Server 2008 com IIS7). Estou tentando fazer isso com o script do PowerShell encontrado aqui :
$appPoolName = $args[0]
$appPool = get-wmiobject -namespace "root\MicrosoftIISv2"
-class "IIsApplicationPool"
| Where-Object {$_.Name -eq "W3SVC/APPPOOLS/$appPoolName"}
$appPool.Recycle()
No entanto, isso resulta em um erro de 'Espaço de nomes inválido':
Eupesquiseiporaíedescobriquetalvezestivessefaltandooserviçodefunção"Scripts e ferramentas de gerenciamento do IIS" que configurei para o IIS.
Como posso corrigir esse problema ou, como alternativa, posso reciclar um AppPool com o Powershell sem o WMI?
Editar
Executando Add-PSSnaping WebAdministration
de 32 bits:
Add-PSSnapin : The Windows PowerShell snap-in 'WebAdministration' is not installed on this machine.
E no ambiente de 64 bits:
Add-PSSnapin : No snap-ins have been registered for Windows PowerShell version 2.
(64bit) Get-PSSnapin -Registered
não retorna nada
Get-PSSnapin -Registered
retorna Windows.ServerBackup, PSVersion 1.0 Tente o link
add-pssnapin WebAdministration
Restart-WebItem 'IIS:\AppPools\DefaultAppPool'
Qual sistema operacional você está executando? É x64 ou x86? Isso pode ter um impacto no carregamento do snapin. Se x64, tente lodar o snap-in do powershell das versões x64 e x86.
x64 está em C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 e x86 está em C: \ Windows \ SysWow64 \ WindowsPowerShell \ v1.0
Além disso, o que você vê quando executa
Get-PSSnapin -Registered