Indigo Rose Software

Professional Software Development Tools

 
+ Reply to Thread
Results 1 to 6 of 6
  1. #1
    Join Date
    Aug 2009
    Posts
    73

    Allowing installation of additional packages after main install

    My installation uses packages so that the user can decide which file groups he wants. The user should be able to install any additional package if he runs setup again. Kind of like the "modify installation" feature in MS Office installations.

    So far I created a registry check on pre-load of the welcome screen. The setup checks if it can find an installation path in the registry and if it can, it tries to find the main executable in this path. If it exists, it jumps directly to a seperate packages screen. So far so good.

    Since the package screen skips over the installation screen the strInstallFolderPath - variable isn't set, so I set it manually with:

    strInstallFolderPath=rootpath;

    Rootpath is a variable that contains the installation path from the registry.


    When I run the setup, everything seems fine. I immediately get the new packages screen, I can select packages, but when I progress to the installation screen the installer just vanishes after checking file conditions. No error message, nothing. I have no clue what I missed to make this work, but there must be something. Any ideas are greatly appreciated.

  2. #2
    Join Date
    Aug 2009
    Posts
    73
    I just found out that I merely had to quote the rootpath variable to make it work... Now I feel stupid lol. Btw, It would have been helpful if the strInstallFolderPath-variable would have been mentioned in the helpfile.

    Edit: Ok, this didn't work as I had imagined. The installation runs through, but it doesn't use the path in rootpath, but its standard path to install the files to. I obviously used the wrong system variable. Which one would be correct?

    Anyway, I had the idea of expanding this feature. I'd like the package screen to be updated according to the already installed packages. Right now, the always same standard packages are ticked in, but I'd like to change that to all packages that are installed. I know how to check whether each package has been installed, but how do I use that information to set up the properties of each package on that screen?
    Last edited by Mexxi; 08-13-2009 at 02:54 AM.

  3. #3
    Join Date
    Aug 2009
    Posts
    73
    alright, fixed the installation path issue with SessionVar.Set("%AppFolder%", rootpath);

  4. #4
    Join Date
    Aug 2009
    Posts
    73
    ok, i have a new problem. when i run the setup a second time, where it let's me to add packages to my existing install, the installation copies all files over that are not covered by packages. is there a way around that? right now, i helped myself by adding all those main files into another package, so that it can be de-selected, but that's not very elegant. any hints on how to do it without adding all non-packaged files to packages?

  5. #5
    Join Date
    Apr 2005
    Location
    São Paulo, Brazil
    Posts
    2,539
    You might want to use MSI Factory instead, if you need this modify / repair / remove behavior of your installer.

    Ulrich

  6. #6
    Join Date
    Aug 2009
    Posts
    73
    thanks for the suggestion. i will check it out, but for this project i will stick with setup factory. the additional install screen is not very complicated and also the number of packages is very limited, so setup factory will suffice for now.

    still, any idea of how to force setup factory to only install package-related files while leaving the rest alone?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts