2014-02-28 35 views
0

我正在使用Windows Server 2003和IIS 6.0。我編寫了使用以下PowerShell代碼片段將Web應用程序添加到IIS的代碼。使用Powershell從IIS 6.0中刪除Web應用程序

# Get parameters passed to the script 
param($appName, $appPath) 
$path = [ADSI]"IIS://localhost/W3SVC/1/ROOT" 
$app = $path.Create("IIsWebVirtualDir", $appName) 
$app.AppCreate3(1,"TestAppPool", $false) 
$app.Put("AppFriendlyName", $appName) 
$app.Put("Path", $appPath) 
$app.put("EnableDirBrowsing", $true) 
$app.SetInfo() 

現在我的要求是從IIS中刪除Web應用程序。 我已經嘗試使用命令AppDelete和AppDeleteRecursive。他們兩人都沒有工作。他們只是刪除應用程序,但文件夾快捷方式仍然保留在IIS中。

我已經試過這一段代碼:

$path = [ADSI]"IIS://localhost/W3SVC/1/ROOT/SampleService" 
$app = $path.AppDelete() 
+0

是要刪除的物理或虛擬目錄嗎? – arco444

+0

IIS中的虛擬目錄。我曾嘗試使用命令AppDelete和AppUnload都沒有或他們的工作。 – Asteroid

+0

你目前的代碼是用來刪除應用程序的? – arco444

回答

0

嗨我已經解決了使用此代碼段的問題。

$path = [ADSI]"IIS://localhost/W3SVC/1/ROOT" 
$path.Delete("IIsWebVirtualDir","SampleService") 
0

會發生什麼事,如果你跑的?

$path = [ADSI]"IIS://localhost/W3SVC/1/ROOT" 

try { 
    $vdir = new-object System.DirectoryServices.DirectoryEntry($path + "/SampleService") 
    $vdir.AppDelete() 
} 
catch [Exception] { 
    write-warning "Couldn't delete app: $($_.Exception.Message)" 
} 
+0

應用程序被刪除,但IIS中的虛擬目錄仍然存在。 (即)我有虛擬目錄在IIS中,如果我右鍵單擊它,我可以選擇將其轉換爲Web應用程序。 – Asteroid

+0

這聽起來對我來說是正確的 - 該目錄物理上存在於站點根目錄的系統上嗎? – arco444

+0

是的。目錄存在。 :) – Asteroid

相關問題