2015-10-14 152 views
0

嗨,我需要幫助來創建一個虛擬目錄。用Inno Setup在IIS中創建虛擬目錄

我試圖使用這些命令,但沒有工作:

[Run] 
Filename: "{cmd}"; parameters: "/C""net %systemroot%\system32\inetsrv\AppCmd add vdir /app.name: """"Default Web Site/"" /path:/SERVER1 /physicalPath:D:\server1 /username:USER /password:PWD" 

Filename: "net.exe"; parameters: "%systemroot%\system32\inetsrv\AppCmd add vdir /app.name: """"Default Web Site/"" /path:/SERVER1 /physicalPath:D:\server1 /username:USER /password:PWD" 

Filename: "{cmd}"; parameters: "/C""%systemroot%\system32\inetsrv\AppCmd add vdir /app.name: """"Default Web Site/"" /path:/SERVER1 /physicalPath:D:\server1 /username:USER /password:PWD" 

Filename: "{cmd}"; parameters: "%systemroot%\system32\inetsrv\AppCmd add vdir /app.name: """"Default Web Site/"" /path:/SERVER1 /physicalPath:D:\server1 /username:USER /password:PWD" 

Filename: "cmd.exe"; parameters: "/C "%systemroot%\system32\inetsrv\AppCmd add vdir /app.name: """"Default Web Site/"" /path:/DSERVER /physicalPath:D:\server1 /username:USER /password:PWD"" 

Filename: "cmd.exe"; parameters: "%systemroot%\system32\inetsrv\AppCmd add vdir /app.name: """"Default Web Site/"" /path:/SERVER1 /physicalPath:D:\server1 /username:USER /password:PWD" 
+0

當你在命令行上手動執行它們時,這些工作是否有效? –

+0

是的,我在DOS下使用這個命令: %systemroot%\ system32 \ inetsrv \ APPCMD add vdir /app.name:"DefaultWeb Site /「/path:/ SERVER1/physicalPath:D:\ server1/username:USER /密碼:PWD – Robertopcn

回答

1

這是正確的語法:

[Run] 
FileName: {sys}\inetsrv\appcmd.exe; \ 
    Parameters: "add vdir /app.name:""Default Web Site/"" /path:/server1/ /physicalPath:D:\server1 /username:USER /password:PWD" 

你的企圖沒有成功,原因是:

  • 在很多情況下,您嘗試運行net,爲什麼?
  • 你有引號全錯。

    要在引用值中嵌入雙引號字符,請使用兩個連續的雙引號字符。

    參見Parameters in Sections

  • 環境變量(%systemroot%)在命令行或批處理文件中解析,但通常在爲程序提供參數時解析。如果您希望Inno Setup爲您解析變量,請使用語法{%SystemRoot}。雖然在這種情況下,最好使用{sys}

    參見Inno Setup Constants

  • 雖然沒有問題,但通過命令解釋器(cmd.exe)試圖運行.exeappcmd.exe)沒有意義。

+0

非常感謝。有效。 此致敬禮。 – Robertopcn