2

After I build my InstallShield I want to copy the outputted MSI file to some partocilar directory

..."\Documents\Visual Studio 2012\Projects\UpdateAppTest\Setup1\Setup1\Express\SingleImage\DiskImages\DISK1\setup1.msi"

to some directory on my computer

TruthOf42
  • 2,017
  • 4
  • 23
  • 38
  • I would like to automatically code sign the msi. Any solution to this question? – Observer Feb 07 '14 at 13:46
  • @TruthOf42 does my answer http://stackoverflow.com/a/28153263/1196586 work for you? Or let me guess: You switched to wix? I think you should accept my answer. – gReX Dec 15 '15 at 15:17

5 Answers5

2

The events tab is not available in the Limited Edition....

Remco Nonhebel
  • 165
  • 1
  • 6
2

You can create an empty project and set the dependence in your solution so that the empty project depends on the InstallShieldLE project. This guarantees that your new project compiles after the InstallShieldLE.

In the dependent project you can set the post build events. In your case jut go up and then down in the directory structure to get your .msi file from your InstallShieldLE file.

Fleve
  • 400
  • 1
  • 5
  • 19
1

Instead of Copy the msi to some other Location you can adjust the "Release Location", also in the LE Version.

Expand your InstallShield-Project, Got to "6 Prepare for Release"\Releases, select SingleImage and in the Build Tab adjust the "Release Location".

In my Case i used "<ISPROJECTFOLDER>..\Runtime" which creates the setup.exe in <projectdir>\Runtime\SingleImage\DiskImages\DISK1\setup.exe

To get rid of the SingleImage\DiskImages\DISK1 Stuff, you could add a dependent Project to your solution, and use the post-build events there.

gReX
  • 1,060
  • 1
  • 20
  • 35
0

Did some more digging and came up with this...

InstallShield allows you to specify commands that can be run at various stages of the build process. These commands are called Build Events. This can be very useful, but in order to use this functionality, you must have the InstallShield Premier edition.

To define a Build Event, just go to the Releases view, click on a release, then click the Events tab. There you can define Prebuild, Precompressor and Postbuild events.

Source: http://www.installationdeveloper.com/2572/prebuild-and-postbuild-events-in-an-installshield-installation/

Observer
  • 755
  • 1
  • 14
  • 23
  • 4
    This is no use for the **Limited Edition**. – Kushan Jul 23 '14 at 13:41
  • I have subsequently switched to WIX. It takes a long to get up and running since the documentation is so poor, but I believe its a better solution. The final straw was when ISLE was not including the correct assemblies; it picked up assemblies from everywhere except where it should. This is such a basic requirement for even compiling the source that I believe such a fundamental bug is worth me switching. – Observer Jul 23 '14 at 15:32
0

InstallShield Limited Edition Setup projects does not support Build events, But there is a hacky method to execute the build events

  1. Create an empty project 'DummyProject'
  2. Go-to the properties and set the output type to 'Class Library'.
  3. Right click on the solution and select 'Project Dependencies' .
  4. Depending on the type of event you are looking for (pre/post), Make the DummyProject depend upon the installshield limited edition setup project or vice-versa. Depending on the type of event you are looking for (pre/post), Make the **DummyProject** depend upon the **installshield limited edition setup project** or vice-versa.
  5. Now you can go to the build events for the DummyProject and add your commands there.

Make sure to use your Macros properly

insomniac
  • 11,146
  • 6
  • 44
  • 55