The update case could be better supported by Inno by default though I don't know how to really do it transactionally/atomic. Create MSI Installer from InnoSetup Installer via Wix User elevation for Installs and Uninstalls but Updates are done for the current User (We still use Inno for our Updates too but move away from that because it's not at all transactional and cannot be undone in the middle of the update) Differentiate between 32 and 64 bit installs SendTo Handler registration (Windows doesn't provide a common SendTo directory so you need to handle it quite complicated for each users individual SendTo directory if you don't want to write a proper SendTo COM thing) Signing and timestamping of exes, dlls, Installer and Uninstaller Our installers need to handle quite a few things. I don't think you need to do that for the D Installer though. You can call every Windows API function you just need to wrap it if it is not provided in one way or another via the InnoSetup API. I never missed a thing because pretty much everything is right there and if you happen to have very special needs you can do it quite nicely with the pascal scripting ability. InnoSetup on the other hand gives you everything you could ever want. It's assembler like language is too low level and many common functions are just missing. I think no one really wants NSIS because of readability issues. Most of the work is already done, just a few apps need to be moved. In our company we used NSIS and are switching over to InnoSetup. But as I said, maybe it IS easy if you're just copying files and you will only ever have one configuration. It's usually something that people hope to just slap on at the end and it often gets underestimated. > The scripting-type tools are tempting because they're easy and no one wants to spend any time on installers. It's hard to predict the future though so I won't say much about it except that it helps to have a more powerful tool when you run into such situations. You may want to remove features, but your installer has to both update existing users in addition to supporting new users. > You may also run into issues when you need to do complicated updates and there are already earlier versions in the field. NET to build a nice GUI for selecting configurations, and C# to call the Windows API when needed, move files around, anything. And I also needed to build different combinations of language localization. I used C# not only to call on the WiX tools to run them, but to easily manipulate pathname and filename strings, which were different because I needed to build different configurations for different customer companies. But the process of transferring variables back and forth from the script to C# for every custom module was painful and I thought, "if I just do this all in C# it will be much easier". Fortunately you can build your own custom modules using C# which is what I tried. Things like code-signing with a verisign signature, injecting data and files into exe resources, etc. I tried msbuild but it didn't have modules to support many of the things I needed to do. > After having not-so-good experiences with InstallShield I looked at things like SCons and msbuild, which was just coming out at the time. Soon you will want to get away from the tool's own GUI and run things programmatically. But you do want to have a one-button automated build process, not just for convenience but for repeatability. > I'm not suggesting you necessarily use D together with something like NSIS. > things much more complicated than it should be. > I wouldn't advise doing the coding part externally in D this makes > Personally I think it's better in the long run to generate an MSI for several reasons you can probably look up yourself-security, ability to rollback (installation is a transaction), appears in Programs and Features, transforms, etc. I don't mean to make too big a deal out of it if the requirements are really simple. If you're just copying a few files then anything will work. > It really depends on how complicated your particular install is and where you expect it to go in the future. I used NSIS a little because a company we partnered with required it but I'm no authority on NSIS or Inno. > I started out by using InstallShield some years ago and got battle scars there. > InnoSetup and in InnoSetup the feature set for Windows is really good > Have you experience with both? I only have experience with NSIS and > and the time needed to build an installer. > I think it's more important to decide upon the feature set, readability > You can also create a WiX installer out of an InnoSetup installer. On Tuesday, 6 December 2016 at 17:28:25 UTC, Jim Hewes wrote:
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |