2010-04-20 78 views
8

有沒有人成功地使用這個模塊,我正在運行32位Windows 7,在那裏我打開了一個使用以管理員身份運行的管理員shell,我導入了WebAdministration模塊,然後嘗試使用有一些問題的命令,都在這裏提供兩個例子IIS 7.5 PowerShell模塊使用問題

網站

我創建了一個網站,使用下面的命令

new-website -name testsite -port 80 -hostheader testsite -physicalpath c:\temp 

然後我ATTE使用命令 獲取網站詳細信息get-website -name testsite 但它總是返回所有網站,似乎忽略了-name參數。當我使用APPCMD它的工作原理是使用以下命令

C:\> C:\Windows\System32\inetsrv\appcmd.exe list site testsite 

AppPools

預計當我嘗試列出的唯一途徑,我可以得到該網站使用過濾器

get-website | ? { $_.name -eq 'testsite' } | get-member 

使用以下命令的應用程序

dir iis:\apppools 

我得到以下錯誤

Get-ChildItem : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) 

然而,當我使用APPCMD如下我得到的所有apppools預期沒有任何錯誤

C:\Windows\System32\inetsrv\appcmd.exe list apppool 

有沒有人成功地設法使用WebAdministration模塊?

在此先感謝
帕特

回答

0

你需要確保PowerShell窗口正在運行升高,嘗試用鼠標右鍵單擊開始菜單,使用「以管理員身份運行」選項,以確保它運行升高。

0

關於Get-Website忽略-Name參數,這看起來像是一個根據this forum post的錯誤。解決方法是使用獲取項目

$website = "Default Web Site" 
Get-Item "IIS:\sites\$website" 

請務必使用雙引號,使用單引號時不擴展變量。

關於瀏覽應用程序池我懷疑這是一個權限問題,因爲CarlosAg提到。確保您使用提升的權限運行PowerShell。我通常通過右鍵單擊它並選擇「以管理員身份運行」來啓動PowerShell。

8

如果您已經以管理員身份運行PowerShell並禁用了Windows UAC並且仍然看到此錯誤,請確保WAS(Windows進程激活服務)正在運行。如果WAS停止,您可以停止W3SVC,但PowerShell肯定會給出同樣令人頭疼的「訪問被拒絕」錯誤。