2013-11-21 51 views
0

我搜索了幾天,所有我發現不工作。我想在我的WiX安裝程序中調用cmd來安裝服務和密鑰。cmd電話在Wix

cmd調用工作得很好,但沒有任何事情發生。這意味着服務和密鑰不被安裝。

<CustomAction Id='CMDInstallService' Directory='INSTALLLOCATION' Execute='deferred' ExeCommand='[SystemFolder]cmd.exe /c &quot;C:\Windows\Microsoft.NET\Framework\v2.0.50727\installutil.exe /DisplayName=[DISPLAYNAME] /ServiceName=[SERVICENAME] [INSTALLLOCATION][ProductName]\bin\PontefixSvc.exe&quot;' Return='ignore'/> 
<CustomAction Id='CMDInstallKey' Directory='INSTALLLOCATION' Execute='deferred' ExeCommand='[SystemFolder]cmd.exe /c &quot; [INSTALLLOCATION][ProductName]\scripts\PontefixEncryptionTool.exe -install [ProductName] [INSTALLLOCATION][ProductName]\KeyContainer\keycontainer.pkxml del .\keycontainer.pkxml &quot;' Return='ignore' /> 

<InstallExecuteSequence> 

    <Custom Action='CMDInstallService' Before='InstallFinalize'></Custom> 
    <Custom Action='CMDInstallKey' Before='InstallFinalize'></Custom> 
</InstallExecuteSequence> 

有人能幫助我嗎?

+1

也許我找到了錯誤。是否有人知道,如何實現這個:「在wix/xml代碼中,如果這也存在嗎?我的意思是,我怎麼寫:」你好,我的名字是「Susi」「並且它應該像它應該? – Schneckschjen

回答

1

要運行命令,我會建議你使用相當執行CA.您將在Wix文檔中找到示例:http://wixtoolset.org/documentation/manual/v3/customactions/qtexec.html以及您想要的是延期執行,即一次執行的兩個自定義操作。

另外我注意到你正在通過cmd在第一個CA中安裝服務,爲什麼你不使用Wix ServiceInstall instad? (http://wixtoolset.org/documentation/manual/v3/xsd/wix/serviceinstall.html

+0

我是不知道爲什麼這是被拒絕的,但使用ServiceInstall是安裝服務的方式,如果您使用的是WixInstaller。 – falopsy