我已經閱讀了很多互聯網上的例子,但是我弄不清楚會出現什麼問題。我有一個WiX安裝程序,可以在安裝時將所有MySQL服務器文件複製到某個位置。然後我想在安裝結束之前運行MySQLInstanceConfig.exe。WiX自定義操作,運行EXE,錯誤代碼1721
<CustomAction Id="CAConfigureMySqlInstance"
Directory="dir96BE76D0898DC48E62BC8465D43A5949"
Impersonate="no"
Execute="commit"
ExeCommand="[dir96BE76D0898DC48E62BC8465D43A5949]MySQLInstanceConfig.exe"
Return="check"
/>
<InstallExecuteSequence>
<Custom Action='CAConfigureMySqlInstance' After='InstallFiles' />
<!-- See this for Before/After sequence moments: http://msdn.microsoft.com/en-us/library/windows/desktop/aa371199(v=vs.85).aspx -->
</InstallExecuteSequence>
我認爲After='InstallFiles'
真的畢竟是文件已在安裝程序的正確的位置被投入。現在我看到進度條進入安裝程序中的「複製新文件」。然後,我收到一條消息:「此安裝所需的程序無法運行」。當我看日誌文件,我看到:
MSI(S)(54:94)[14:14:32:886]:注:1:1721 2:CAConfigureMySqlInstance 3:C:\程序文件(x86)\ MyCompnay \的MySQL \ MySQL服務器5.5 \ BIN \ 4:C:\ Program Files文件(x86)的\ MyCompany的\的MySQL \ MySQL服務器5.5 \ BIN \ MySQLInstanceConfig.exe
每當我複製'Run(Windows + R)'中的路徑,運行MySQL配置器!所以路徑是正確的。所以我得出結論,在錯誤的時刻,文件已被複制到該位置!錯誤代碼是1721
每當我改變ExeCommand
到C:\Windows\Explorer.EXE C:\SomeDirIKnow
,Windows Explorer啓動......所以自定義操作比較合適......
我該如何解決這個問題?