Define File Bag

Got a problem you cannot solve? Try here.
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Define File Bag

Post by bsweeney »

If i use define file bag in my MSI code, should the contents of the file bag be available to the uninstaller? I've created a script which wraps some stuff up in a file bag and executes the contents during the prereq phase of the install. It fails complaining that it can't find the original source during an uninstall.
mills
Posts: 814
Joined: Tue Jul 06, 2010 7:10 pm
Location: Honolulu, HI

Re: Define File Bag

Post by mills »

Yes, according to the help doc, the file bag should be available any time the setup is running. I did run a few tests and couldn't reproduce a complaint for lack of the original source, so it could be good to know how you're managing it.
Andy Mills
InstallAware
Other Help:
White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Product Guides - http://www.installaware.com/publication ... guides.htm
InstallAware Help - Press F1 in the InstallAware IDE.
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Re: Define File Bag

Post by bsweeney »

Well I rebuilt and it went away. Actually, it was part of that uninstall problem that I was having previously. I started a totally new project from the ground up and the uninstaller worked like a charm. A few hours ago I witnessed the problem again on an XP Pro VM and it referred me to a line in code where I was defining a file bag. I had to change some unrelated stuff, so I rebuilt and tried on a fresh VM and it stopped happening...

In any event, what exactly do you mean by 'managing'?
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Re: Define File Bag

Post by bsweeney »

Here is the exact code the uninstaller complains of:

Code: Select all

Comment: only do any of this mappoint stuff if it's a cd
[compiler if Variable BUILDMODE Equals CD]
Set Variable MAPPOINT to 
 
Comment: install full blown mappoints
[DEFINE REGION: Full Install]
 
Comment: full us install
Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\en_mappoint_2009_north_american_maps_x86_dvd_x14-90057\*.*, include files recursively, get runtime location of files into variable MAPPOINT
Comment: MessageBox: test, $MAPPOINT$
 
Comment: full eu install
Comment: Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\en_mappoint_2009_european_maps_x86_dvd_x15-33609\*.*, include files recursively, get runtime location of files into variable MAPPOINT
Comment: MessageBox: test, $MAPPOINT$
<<Code Folding Region>>
 
Comment: if it's the trial version give them trial mappoints
[DEFINE REGION: trial install]
 
Comment: trial mappoint us
Comment: Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\mappoint_us_trial\MicroMapPoint2009\MicroMapPoint2009\*.*, get runtime location of files into variable MAPPOINT
Comment: MessageBox: test, $MAPPOINT$
Comment:  
Comment: Comment: trial eu mappoint
Comment: Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\mappoint_eu_trial\Mappoint2009_Europe\*.*, include files recursively, get runtime location of files into variable MAPPOINT
Comment: MessageBox: test, $MAPPOINT$
Comment:  
<<Code Folding Region>>
 
 
Comment: and now that we know what we're doing... run!
if Variable REMOVE Equals TRUE
 Set Variable REMOVE_MAPPOINT to 
 MessageBox: Uninstall Components, Would you like to remove MapPoint from your system?$NEWLINE$$NEWLINE$(Only versions installed with Blackthorn will be removed.)
 if Variable REMOVE_MAPPOINT Equals Yes
   Run Program $MAPPOINT$\setup.exe /uninstall /passive (WAIT)
 end
 else
 Run Program $MAPPOINT$\setup.exe /passive (WAIT)
end
[compiler end]
As you can see most of it is commented out. What I am trying to do, is install this thing as a prereq to the app. I wrap it in a file bag, and execute the installer. If we happen to be uninstalling, I prompt the user and uninstall if they say so. However, the uninstall does not get this far; it bail on line 9 which is where i define the file bag. It works fine during the install, where virtually the same script is being executed...

To recap, what happens is this:

I'm running the uninstaller, and suddenly i get a file browser dialog. It does not matter what I choose in the file browser, because when i click OK it just reverts back to the root of the file system. If I click cancel i get an error popup with these lines:
Runtime error in setup script:

Source File: installmappoint
Line Number: 9

Original setup sources required to complete operation, sources not found
mills
Posts: 814
Joined: Tue Jul 06, 2010 7:10 pm
Location: Honolulu, HI

Re: Define File Bag

Post by mills »

Is that the whole code for the script? That's pretty much what I was looking for when asked how it's managed. I had a feeling you're working in a fairly custom setup.

For the messagebox test you have right after the file bag definition, does that appear, if uncommented, during the uninstall?
Andy Mills
InstallAware
Other Help:
White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Product Guides - http://www.installaware.com/publication ... guides.htm
InstallAware Help - Press F1 in the InstallAware IDE.
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Re: Define File Bag

Post by bsweeney »

Yes it does; interesting you should ask. As of the time i built that version of the script, the file bag was ending up as part of the .NET 2.0 web media block. I thought this sounded strange, so I added an extra web media block to see if that had any effect. Same problem. Just now i got the idea of moving the Offline block way up in my script so that it encompasses all of the various stuff I'm trying to do that wasn't auto-generated by the designer. So now the only web media blocks left in my project are the ones created by adding runtimes like .net and sql server. Does this sound reasonable? I'm about to test in a VM, i'll post back when i've seen the results.

Also, now that I've thought about it, this whole thread is really a dupe of the other thread I started for the uninstall bug, so maybe that old one should be closed. Should i go ahead and delete it or lock it?

thanks,
brian
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Re: Define File Bag

Post by bsweeney »

Same result - sources not found. Might it help if i place this stuff all in the same script file?
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Re: Define File Bag

Post by bsweeney »

It would appear that what is happening, is that the prerequisites are not being copied into the directory below, which i assume is where the uninstaller looks when it tries to uninstall things. My test popup indicates that the file bag which fails during uninstall, lives in a data directory at the root of the uncompressed file structure. No such directory exists at the path below. For now i'm just going to omit that stuff from the uninstallation. My entire script is below. Please let me know if it looks like i'm doing anything out of the ordinary. FYI the file bag which fails is very large (DVD ISO unizipped).

C:\ProgramData\{C1C0C81C-2739-4048-BC26-11D5C0B14803}

Code: Select all

Comment: .NET Application Setup Project
 
[DEFINE REGION: Check Application Requirements]
Set Variable OS to 
Get Exact OS Level into OS
if Variable OS Equals XP
  Comment: nothing...
  else
  if Variable OS Equals 2003
    Comment: nothing...
  end
  else
  Comment: go ahead and mess with UAC etc...
  Get System Setting Vista UAC Elevation into CHECKSYSTEM
  if Variable CHECKSYSTEM not Equals TRUE
    MessageBox: $TITLE$ Setup Error, This product requires at least User Account Control Elevation.$NEWLINE$$NEWLINE$Setup cannot continue.
    Terminate Installation
  end
  Get System Setting Administrator Rights into CHECKSYSTEM
  if Variable CHECKSYSTEM not Equals TRUE
    MessageBox: $TITLE$ Setup Error, This product requires at least Administrator Privileges.$NEWLINE$$NEWLINE$Setup cannot continue.
    Terminate Installation
  end
  Comment: Check system has at least Windows 98
  Get System Setting Windows XP into CHECKSYSTEM
  if Variable CHECKSYSTEM not Equals TRUE
    MessageBox: $TITLE$ Setup Error, This product requires at least Windows XP.$NEWLINE$$NEWLINE$Setup cannot continue.
    Terminate Installation
  end
end
 
<<Code Folding Region>>
 
[DEFINE REGION: Check/Install Application Pre-Requisites]
 
[DEFINE REGION: Check Application Pre-Requisites]
Comment: Check setup pre-requisites
Set Variable PREREQ to TRUE
Set Variable PRELIST to 
[compiler if Variable BUILDMODE not Equals PATCH]
if Variable NEEDSUPGRADE Equals TRUE
  Set Variable PREREQ to TRUE
  Set Variable PRELIST to $PRELIST$$NEWLINE$Previous Version Uninstallation
end
Include Script: checksqlcompact
Set Variable PRELIST to $PRELIST$$NEWLINE$Adobe Acrobat Reader 9.3
Set Variable PRELIST to $PRELIST$$NEWLINE$Prolific Serial TO USB Adapter Drivers
[compiler if Variable BUILDMODE Equals CD]
Set Variable PRELIST to $PRELIST$$NEWLINE$Microsoft MapPoint 2009
[compiler end]
Set Variable ARCHITECTURE to 
Get System Setting Processor Architecture into ARCHITECTURE
if Variable ARCHITECTURE Equals IA64
  MessageBox: Unsupported Chip Architecture, Blackthorn is not currently supported on Itanium Architecture.  Setup will now terminate.
  Terminate Installation
end
if Variable ARCHITECTURE Equals UNKNOWN
  MessageBox: Unsupported Chip Architecture, Blackthorn is not currently supported on your chip architecture.  Setup will now terminate.
  Terminate Installation
end
if Variable ARCHITECTURE Equals X86
  Include Script: checkmsi45
  Include Script: checknet2sp2
  else
  Include Script: checkmsi45_x64
  Comment: x86 sqlce is a prereq for sql ce x64
  Include Script: checknet20sp2_x64
end
[compiler end]
<<Code Folding Region>>
 
[DEFINE REGION: Install Application Pre-Requisites]
Comment: Install setup pre-requisites
if Variable PREREQ not Equals FALSE
  Display Dialog: prereq, wait for dialog to return (modal)
  if Variable WIZARD Equals CANCEL
    Terminate Installation
  end
  Display Dialog: progressprereq, use as progress dialog (non-modal)
  [compiler if Variable BUILDMODE not Equals PATCH]
  if Variable NEEDSUPGRADE Equals TRUE
    Set Variable REMOVEOLD to 
    Set Variable ERROROLD to 
    Install/Remove MSI Package $PRODUCTCODE$[REMOVE=ALL] (get result into variable REMOVEOLD)
    if Variable REMOVEOLD Equals ERROR
      MessageBox: $TITLE$ Setup, Unable to uninstall old version of $TITLE$. Please uninstall it yourself using Control Panel Add-Remove Programs before attempting to install this product.$NEWLINE$$NEWLINE$$ERROROLD$
      Terminate Installation
    end
    if Variable REMOVEOLD Equals REBOOT
      MessageBox: $TITLE$ Setup, Your computer needs to be restarted before $TITLE$ Setup can continue.$NEWLINE$$NEWLINE$Please save your work in all running programs and click OK to restart your computer. Setup will resume once your computer restarts.$NEWLINE$$NEWLINE$If you click CANCEL, setup will exit. You will have to run setup again at a later time to install $TITLE$.
      if Variable REBOOTNOW Equals OK
        Reboot Computer and Resume Setup
        else
        Terminate Installation
      end
    end
    Set Variable MAINTENANCE to FALSE
  end
  [DEFINE WEB MEDIA Microsoft SQL Server Compact Edition 3.5]
  Include Script: setupsqlcompact
  if Variable ARCHITECTURE Equals X86
    [DEFINE WEB MEDIA Microsoft Windows Installer 4.5]
    Include Script: setupmsi45
    [DEFINE WEB MEDIA Microsoft .NET Framework 2.0 with Service Pack 2]
    Include Script: setupnet2sp2
    else
    [DEFINE WEB MEDIA Microsoft Windows Installer 4.5 (x64)]
    Include Script: setupmsi45_x64
    [DEFINE WEB MEDIA Microsoft .NET Framework 2.0 with Service Pack 2 (x64)]
    Include Script: setupnet20sp2_x64
  end
  [compiler end]
  [DEFINE REGION: Blackthorn Early Prerequisites]
  [OFFLINE CONTENT]
  if Variable REMOVE Equals TRUE
    Comment: install/uninstall pl2303
    Set Variable REMOVE_PL2303 to 
    MessageBox: Uninstall Components, Would you like to remove the PL2303 Serial to USB Driver from your system?
    if Variable REMOVE_PL2303 Equals YES
      Run Program $SUPPORTDIR$\PL2303.exe  (WAIT)
    end
    Comment: install/uninstall adobe
    Set Variable REMOVE_ADOBE to 
    MessageBox: Uninstall Components, Would you like to remove Adobe Acrobat Reader from your system?
    if Variable REMOVE_ADOBE Equals YES
      Install/Remove MSI Package $INSTALLDIR$\Adobe\AcroRead.msi[REMOVE=ALL]
    end
    Comment: mappoint removal dealt with in installmappoint script
    else
    Comment: no prompts, just install
    Run Program $SUPPORTDIR$\PL2303.exe  (WAIT)
    Install/Remove MSI Package $SUPPORTDIR$\AcroRead.msi[ADDLOCAL=ALL]
  end
  Comment: installmappoint script has it's own remove flag built in...
  Comment: only do any of this mappoint stuff if it's a cd
  [compiler if Variable BUILDMODE Equals CD]
  Set Variable MAPPOINT to 
   
  Comment: full us install
  Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\en_mappoint_2009_north_american_maps_x86_dvd_x14-90057\*.*, include files recursively, get runtime location of files into variable MAPPOINT
   
  Comment: full eu install
  Comment: Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\en_mappoint_2009_european_maps_x86_dvd_x15-33609\*.*, include files recursively, get runtime location of files into variable MAPPOINT
   
  Comment: trial mappoint us
  Comment: Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\mappoint_us_trial\MicroMapPoint2009\MicroMapPoint2009\*.*, get runtime location of files into variable MAPPOINT
   
  Comment: trial eu mappoint
  Comment: Define File Bag : C:\Users\Brian\Documents\BerlaCorp\installer-prereqs\mappoint_eu_trial\Mappoint2009_Europe\*.*, include files recursively, get runtime location of files into variable MAPPOINT
   
  MessageBox: test, $MAPPOINT$
   
  if Variable REMOVE Equals TRUE
    Set Variable REMOVE_MAPPOINT to 
    MessageBox: Uninstall Components, Would you like to remove MapPoint from your system?$NEWLINE$$NEWLINE$(Only versions installed with Blackthorn will be removed.)
    if Variable REMOVE_MAPPOINT Equals Yes
      Run Program $MAPPOINT$\setup.exe /uninstall /passive (WAIT)
    end
    else
    Run Program $MAPPOINT$\setup.exe /passive (WAIT)
  end
  [compiler end]
  <<Code Folding Region>>
  Hide Dialog
end
<<Code Folding Region>>
 
<<Code Folding Region>>
 
[DEFINE REGION: Define Setup Globals]
Comment: Define Setup Components
Define Component: Blackthorn 2
 
Comment: Initialize Setup Globals
Get System Setting Windows NT Kernel (NT4, 2000, XP, 2003, Vista, 2008) into ISNT
Get Folder Location System->Program Files Directory into PROGRAMFILES
Get Common Folder Location System->Program Files Directory into COMMONFILES
Get Common Folder Location Start Menu->Programs Group into SHORTCUTFILESALL
Get Folder Location Start Menu->Programs Group into SHORTCUTFILES
if Variable SHORTCUTFILESALL Equals 
  Set Variable SHORTCUTFILESALL to $SHORTCUTFILES$
end
Get Folder Location System->Desktop Directory into DESKTOPDIR
Get Folder Location System->Windows Directory into WINDIR
Get Folder Location System->System Directory into WINSYSDIR
Get Folder Location Taskbar->Quick Launch Directory into QUICKLAUNCHDIR
Get Folder Location WWW->WWWRoot into WWWROOTDIR
<<Code Folding Region>>
 
[DEFINE REGION: Setup User Interview]
if Variable MAINTENANCE Equals TRUE
  GoTo Label: Maintenance
  else
  [compiler if Variable BUILDMODE not Equals PATCH]
  Comment: First Time Install
  Set Variable TARGETDIR to $PROGRAMFILES$\BerlaCorp\$TITLE$
  Set Variable STARTMENU to $TITLE$
  [compiler end]
end
 
label: Welcome Dialog
Display Dialog: welcome, wait for dialog to return (modal)
if Variable WIZARD Equals CANCEL
  GoTo Label: Main Install
end
[compiler if Variable BUILDMODE not Equals PATCH]
label: License Check
Display Dialog: licensecheck, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: Welcome Dialog
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
label: ReadMe Information
Comment: Display Dialog: readme, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: License Check
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
label: User Registration
Comment: Display Dialog: registration, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: ReadMe Information
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
label: Setup Type
Comment: Display Dialog: setuptype, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: User Registration
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
Comment: TO-DO: Customize your minimum setup here
if Variable MINIMUM Equals TRUE
  Deselect Component: Blackthorn 2
  else
  if Variable COMPLETE Equals TRUE
    Select Component: Blackthorn 2
  end
end
label: Custom Setup
Comment: Display Dialog: componentstree (if variable PERSONALIZED is TRUE), wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: Setup Type
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
label: Destination Directory
Comment: Display Dialog: destination, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: Custom Setup
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
label: Start Menu
Comment: Display Dialog: startmenu, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  GoTo Label: Destination Directory
  else
  if Variable WIZARD Equals CANCEL
    GoTo Label: Main Install
  end
end
[compiler end]
label: Start Installation
Display Dialog: startinstallation, wait for dialog to return (modal)
if Variable WIZARD Equals BACK
  [compiler if Variable BUILDMODE not Equals PATCH]
  GoTo Label: Start Menu
  [compiler else]
  GoTo Label: Welcome Dialog
  [compiler end]
  else
  GoTo Label: Main Install
end
 
label: Maintenance
Comment: Maintenance Install/Uninstall
wizard loop
  Display Dialog: maintenance, wait for dialog to return (modal)
  Comment: Display Dialog: componentstree (if variable MODIFY is TRUE), wait for dialog to return (modal)
  Display Dialog: startinstallation, wait for dialog to return (modal)
end
<<Code Folding Region>>
 
[DEFINE REGION: Process (Un)Installation]
label: Main Install
Comment: Exit Setup if Wizard Loop cancelled
if Variable WIZARD Equals CANCEL
  Terminate Installation
end
 
Comment: Prepare to install
Set Variable PROGRESSTEXT to Installing $TITLE$
Set Variable SUCCESS to 
Set Variable LASTERROR to 
if Variable ALLUSERS Equals TRUE
  Set Variable SHORTCUTFOLDER to $SHORTCUTFILESALL$\$STARTMENU$
  else
  Set Variable SHORTCUTFOLDER to $SHORTCUTFILES$\$STARTMENU$
end
Display Dialog: progress, use as progress dialog (non-modal)
 
Comment: Modify Target System
[DEFINE REGION: Perform Uninstallation]
if Variable REMOVE Equals TRUE
  Comment: Uninstall product
  Comment: TO-DO: Insert any additional uninstall commands here
  Apply Uninstall (get result into variable SUCCESS)
  Set Variable PROGRESS to 100
  else
  <<Code Folding Region>>
  [DEFINE REGION: Perform First Time or Maintenance Installation]
  Comment: Install/Re-Install product
  Create Shortcut $SHORTCUTFOLDER$\Uninstall #TITLE# to $UNINSTALLLINK$
  Install Files C:\Users\Brian\Documents\BerlaCorp\Build\Debug\*.* to $TARGETDIR$, ignore files matching wildcard pattern(s) *.xml;*.pdb;*.application
  Install Files C:\Users\Brian\Documents\BerlaCorp\Build\Debug\Plugins\*.* to $TARGETDIR$\Plugins, ignore files matching wildcard pattern(s) *.xml;*.pdb
  Install Files C:\Users\Brian\Documents\BerlaCorp\Build\Debug\MapPointOCX\*.* to $TARGETDIR$\MapPointOCX, include subfolders
  Install Files C:\Users\Brian\Documents\BerlaCorp\Build\Debug\Adobe\*.* to $TARGETDIR$\Adobe
  Install Files C:\Users\Brian\Documents\BerlaCorp\Build\Debug\PL2303\PL2303.exe to $TARGETDIR$\PL2303
  Create Shortcut $SHORTCUTFOLDER$\Blackthorn to $TARGETDIR$\Blackthorn.exe
  Create Shortcut $DESKTOPDIR$\Blackthorn to $TARGETDIR$\Blackthorn.exe
  Write Registry Key HKLM\SOFTWARE\Microsoft\MapPoint\16.0\USA\\EULA, 1
  Write Registry Key HKLM\SOFTWARE\Microsoft\MapPoint\16.0\USA\\PromptUserUpdate, 0
  Write Registry Key HKLM\SOFTWARE\Microsoft\MapPoint\16.0\USA\\Registration, 1
  Write Registry Key HKLM\SOFTWARE\Microsoft\MapPoint\16.0\EUR\\EULA, 1
  Write Registry Key HKLM\SOFTWARE\Microsoft\MapPoint\16.0\EUR\\PromptUserUpdate, 0
  Write Registry Key HKLM\SOFTWARE\Microsoft\MapPoint\16.0\EUR\\Registration, 1
  Get Component Blackthorn 2 Selection State into Variable SELECTED
  if Variable SELECTED Equals TRUE
  end
  Comment: TO-DO: Insert any additional install commands here
  [compiler if Variable BUILDMODE Equals PATCH]
  Apply Patch (get result into variable SUCCESS)
  [compiler else]
  if Variable ADVERTISE Equals TRUE
    Apply Advertised (get result into variable SUCCESS)
    else
    Apply Install (get result into variable SUCCESS)
    if Variable SUCCESS not Equals ERROR
      if Variable SUCCESS not Equals CANCEL
        Register assembly $INSTALLDIR$\MapPointOCX\2010\MappointControl.ocx
        Register assembly $INSTALLDIR$\MapPointOCX\2009\MappointControl.ocx
      end
    end
  end
  [compiler end]
  Set Variable PROGRESS to 100
end
<<Code Folding Region>>
<<Code Folding Region>>
 
[DEFINE REGION: Finish Setup]
Comment: End of Installation
Hide Dialog
Display Dialog: finish, wait for dialog to return (modal)
if Variable SILENT Equals FALSE
  if Variable REBOOTCOMPUTER Equals TRUE
    if Variable SUCCESS Equals REBOOT
      Reboot Computer
    end
  end
  if Variable RUNAPP Equals TRUE
    if Variable REMOVE Equals FALSE
      if Variable SUCCESS Equals COMPLETE
        Run Program $TARGETDIR$\Blackthorn.exe 
      end
    end
  end
end
<<Code Folding Region>>
bsweeney
Posts: 34
Joined: Fri Aug 27, 2010 1:51 pm

Re: Define File Bag

Post by bsweeney »

OK I finally figured it out. It's looking for the CD. Of course i never made a CD, because im just testing it. What i did do was map the installaware ouput directory to as network share in my VM. When the popup shows up asking me for my original sources there is no way of pointing it my network share - not sure why. To get around this I, copied the entire output dir to the VM (desktop but im sure anywhere would do) and installed from there. The install still places most of the setup in ProgramData, but the file bag stuff still seems to be contained only on the uncompressed dir. When i got the popup asking for the original sources i mapped it back to the uncompressed dir on the VMs desktop. This was totally non-obvious to me and we're trying to develop a piece of software for people who may not be the most technical users. I would respectfully suggest that this popup be made more informative in the future.

Second, is there no way of setting it up so that the CD does not need to be in the drive during all of this? These days everyone has more than enough space for these things on their HDD so i see no reason not to...

thanks,
brian
mills
Posts: 814
Joined: Tue Jul 06, 2010 7:10 pm
Location: Honolulu, HI

Re: Define File Bag

Post by mills »

I think you may have come across a bug. I use uncompressed builds almost exclusively unless testing calls for another build type and have never had a problem. In general, it seems to assume that the data is in the same directory as the setup exe.

It sounds like something is fishy because of the network drive. I'll try to create a project to reproduce this scenario with.
Andy Mills
InstallAware
Other Help:
White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Product Guides - http://www.installaware.com/publication ... guides.htm
InstallAware Help - Press F1 in the InstallAware IDE.
mills
Posts: 814
Joined: Tue Jul 06, 2010 7:10 pm
Location: Honolulu, HI

Re: Define File Bag

Post by mills »

I got around to testing this today, but I wasn't able to reproduce it. It's not clear where what files are where (in terms of your setup/output files). It sounds like you were using a VM to test this with... Were you able to produce this on the build machine as well?

I'm guessing you may have worked around this, since you haven't reposted, but it would be nice to know as much as possible about how to produce this... the more specific the steps to reproduce, the better.

I'm also curious what the file bag pointed to. Are the files stored on the network drive or locally?
Andy Mills
InstallAware
Other Help:
White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Product Guides - http://www.installaware.com/publication ... guides.htm
InstallAware Help - Press F1 in the InstallAware IDE.
abenedik
Posts: 2
Joined: Thu Jan 13, 2011 4:39 am

Re: Define File Bag

Post by abenedik »

I am having similar problems with File Bag.

I am creating single file exe installers.

When the product is already installed, I click on installer exe and select uninstall - in this case the file bag works.
But when I try to uninstall the product from the Control Panel - Add/Remove programs, the file bag does not work - it gives the folder browse dialog that cannot be resolved (maybe if we would give the installer the uncompressed folder it would work).

I was not able to make file bag work in the uninstall scenario from Control Panel.

Also the open folder dialog is totally useless in case of single file exe installer.
giaviv
Posts: 2039
Joined: Fri Dec 17, 2010 1:39 pm

Re: Define File Bag

Post by giaviv »

Dear abenedik,

Thank you for your input. I was not able to reproduce this issue but I will keep you posted.

Best
Aviv Giladi
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Product Guides - http://www.installaware.com/publication ... guides.htm
InstallAware Help -F1 anywhere in the InstallAware IDE
Binth
Posts: 2
Joined: Tue Jan 25, 2011 8:27 am

Re: Define File Bag

Post by Binth »

I have the same issue, I defined the file bag to point to a mapped network drive (so I did not need to copy the msi files locally that I was trying to install each time I wanted to rebuild) and the install works great. When I go to uninstall it prompts for a file location, I tried changing the script to use the product codes for each msi (three of them) and it did not help. The install is a single exe file.

I am going to rebuild the project with a local source folder for the filebag and see that changes my results.

InstallAware 9 R2
Binth
Posts: 2
Joined: Tue Jan 25, 2011 8:27 am

Re: Define File Bag

Post by Binth »

I figured it out, once I copied the files locally to C:\Program Files\CWS and pointed filebag to that location it worked.

The other thing I did was I originally placed the Filebag on line "7" like the example page (How to install (or remove) a third party MSI using InstallAware) and placed it in the mediablock session after the files were copied locally.

It can now find the install source and uninstall ok.
Post Reply