Merge msi and exe

前端 未结 3 1458
北荒
北荒 2020-12-02 15:28

My deployment project creates and .msi-file and an .exe-file. Is it possible to merge these into one .exe?

相关标签:
3条回答
  • 2020-12-02 16:09

    I like it, you can see how to use IExpress on this link!

    The only problem I see was that I've generated a installer on Windows Vista 64bits, I was trying to install the generated .exe in a server with Windows Server 2008 32bits, but it throws an error about processor type.

    0 讨论(0)
  • 2020-12-02 16:22

    Another option could be 7zip with sfx plugin: http://www.7-zip.org/download.html or WinZip self extractor: http://www.winzip.com/prodpagese.htm

    0 讨论(0)
  • 2020-12-02 16:25

    Yes, you can create a self-extracting installer containing both MSI and the setup.exe bootstrapper file.

    I think it is possible to do that with WinZip, or you can use IExpress coming with Windows. Here is a guide how to create a self-extracting executable with IExpress. You can either use the IExpress wizard or manually write a config file which you then can execute in the post-built step of your setup project, e.g. by calling

    IExpress /N /Q MySetup.sed
    

    A sample configuration file would look like this:

    [Version]
    Class=IEXPRESS
    SEDVersion=3
    [Options]
    PackagePurpose=InstallApp
    ShowInstallProgramWindow=1
    HideExtractAnimation=1
    UseLongFileName=1
    InsideCompressed=0
    CAB_FixedSize=0
    CAB_ResvCodeSigning=0
    RebootMode=N
    InstallPrompt=%InstallPrompt%
    DisplayLicense=%DisplayLicense%
    FinishMessage=%FinishMessage%
    TargetName=%TargetName%
    FriendlyName=%FriendlyName%
    AppLaunched=%AppLaunched%
    PostInstallCmd=%PostInstallCmd%
    AdminQuietInstCmd=%AdminQuietInstCmd%
    UserQuietInstCmd=%UserQuietInstCmd%
    SourceFiles=SourceFiles
    [Strings]
    InstallPrompt=
    DisplayLicense=
    FinishMessage=
    TargetName=MySetup.exe
    FriendlyName=My cool application
    AppLaunched=CMD /C setup.exe
    PostInstallCmd=
    AdminQuietInstCmd=
    UserQuietInstCmd=
    FILE0="setup.exe"
    FILE1="MySetup.msi"
    [SourceFiles]
    SourceFiles0=
    [SourceFiles0]
    %FILE0%=
    %FILE1%=
    

    There is a little caveat however with the self-extracting installer scenarios. Due to another fix these scenarios are broken with the bootstrapper (setup.exe) created by VS2008 SP1. For a workaround see the following thread: http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/3731985c-d9cc-4403-ab7d-992a0971f686/?ffpr=0.

    0 讨论(0)
提交回复
热议问题