[英]Help in Custom action Setup project
請提出您的想法:
在一個解決方案文件中,我有兩個項目PROJECTA和SETUP項目。 創建PROJECTA的安裝程序之后,安裝程序“ example.msi”包含PROJECTA的PROJECTA.exe(或活動輸出)。
在安裝“ example.msi”時,我想在后台運行PROJECTA.exe。
我嘗試了自定義控件和安裝程序類
如果給出了exe的路徑(如下所示),則可以正常工作。 但這不是預期的行為,我希望在安裝之前將example.msi中的PROJECTA.exe復制到該位置,以便在安裝過程中可以從那里運行。
如何做到這一點。
C#語法:
[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
}
[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Commit(IDictionary savedState)
{
base.Commit(savedState);
string s="C:\\xxx\\PROJECTA.exe";
System.Diagnostics.Process.Start(s);
}
先感謝您。
使MMS安裝PROJECTA.exe,然后將其添加到二進制表中。 然后,如果要在UI序列中完成,則創建類型為50的CustomAction,如果要在exec序列中,則創建類型為7。 您不能在.NET CA中執行此操作,因為一次只能運行1個MSI安裝程序實例。 通過運行嵌套的安裝程序,您基本上可以共享同一個MSI安裝程序引擎實例
說完所有這些之后,嵌套安裝程序可能會很痛苦,如果可以幫助,應該避免使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.