2011-11-05 34 views
0

我試圖改變應用程序池,我的web應用程序的幫助自定義操作維克斯自定義操作配置應用程序池

<InstallExecuteSequence> 
    <Custom Action="ConfigureAppPools" Before="InstallFinalize">Application pool   configured</Custom> 
    </InstallExecuteSequence> 

    <!-- Snip -->           
    <CustomAction Id="ConfigureAppPools" Execute="deferred" Impersonate="no" Return="check" Directory="TARGETDIR" ExeCommand="[SystemFolder]inetsrv\appcmd set site /site.name:&quot;Default Web Site&quot;/[path='/MyWeb'].applicationPool:MyWeb"/> 

,但得到以下錯誤 LGHT0204:ICE03:無效的格式字符串;表:CustomAction,列:目標,鍵:ConfigureAppPools

如何解決?

回答

4

您應該在ExeCommand屬性(大約在path=...左右)中跳過方括號,否則MSI認爲它是它必須格式化的屬性。試試這個:

<CustomAction Id="ConfigureAppPools" Execute="deferred" Impersonate="no" Return="check" Directory="TARGETDIR" ExeCommand="[SystemFolder]inetsrv\appcmd set site /site.name:&quot;Default Web Site&quot; /[\[]path='/MyWeb'[\]].applicationPool:MyWeb"/> 

你想逃避每個方括號必須用反斜槓爲前綴,幷包裝成另一組方括號。

相關問題