This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- out of disk space on
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
‎Apr 16, 2012
02:41 AM
out of disk space on
Hi,
I am creating an install using a Basic MSI 2012 project and I want to provide the user the option to install onto a different drive if the default install directory is OUT OF DISK SPACE.
I provide him the custom UI to install onto a different drive (e.g. E:\) - I can see in the log file that INSTALLDIR property was changed:
Drive E: have sufficient disk space!!
But the user back to OUT OF DISK SPACE dialog - properties OutOfDiskSpace and OutOfNoRbDisk space weren't checks/run again – After the user changed the target path to other drive (Not Default drive).
How can I rerun/recheck disk space on new drive (e.g. Drive E:\) and not on the default dirve (e.g. drive C:\) disk space ?
Please suggest.
Thanks,
I am creating an install using a Basic MSI 2012 project and I want to provide the user the option to install onto a different drive if the default install directory is OUT OF DISK SPACE.
I provide him the custom UI to install onto a different drive (e.g. E:\) - I can see in the log file that INSTALLDIR property was changed:
MSI © (58:48) [16:41:11:512]: PROPERTY CHANGE: Modifying INSTALLDIR property. Its current value is 'C:\'. Its new value: 'E:\'.
Drive E: have sufficient disk space!!
But the user back to OUT OF DISK SPACE dialog - properties OutOfDiskSpace and OutOfNoRbDisk space weren't checks/run again – After the user changed the target path to other drive (Not Default drive).
How can I rerun/recheck disk space on new drive (e.g. Drive E:\) and not on the default dirve (e.g. drive C:\) disk space ?
Please suggest.
Thanks,
(5) Replies
‎Apr 16, 2012
02:43 PM
Is INSTALLDIR being set as a property (either with a SetProperty action, or calling MsiSetProperty or an equivalent through a custom action)? If so, this does not cause MSI to perform any checks on the target path or update any child paths of INSTALLDIR. A Set Directory (type 35) action, SetTargetPath dialog action, or MsiSetTargetPath call should be used instead (note this should only be done with a condition of Not Installed to prevent interfering with MSI component information after a first-time install).
‎Apr 17, 2012
11:35 AM
The INSTALLDIR has being set as a property and I set it with MsiSetTargetPath – See log file:
But when I click on 'Install' button After the user changed the target path to other drive (Not Default drive) the 'OUT OF DISK SPACE' dialog pop up again.
How can I cause the system to recheck the disk space on the new drive and not on the default drive - When I click on Install button cause the setup to check the disk space on the new drive?
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying USR property. Its current value is 'C:\TEST\usr\'. Its new value: 'E:\TEST\usr\'.
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying DATA property. Its current value is 'C:\TEST\data\'. Its new value: 'E:\TEST\data\'.
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying BIN property. Its current value is 'C:\TEST\bin\'. Its new value: 'E:\TEST\bin\'.
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying DAT property. Its current value is 'C:\TEST\dat\'. Its new value: 'E:\TEST\dat\'.
MSI (c) (14!B8) [19:22:04:760]: PROPERTY CHANGE: Modifying COLOR_ICONS property. Its current value is 'C:\TEST\dat\color_icons\'. Its new value: 'E:\TEST\dat\color_icons\'.
MSI (c) (14!B8) [19:22:04:760]: PROPERTY CHANGE: Modifying OLP property. Its current value is 'C:\TEST\dat\olp\'. Its new value: 'E:\TEST\dat\olp\'.
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying DATA property. Its current value is 'C:\TEST\data\'. Its new value: 'E:\TEST\data\'.
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying BIN property. Its current value is 'C:\TEST\bin\'. Its new value: 'E:\TEST\bin\'.
MSI (c) (14!B8) [19:22:04:745]: PROPERTY CHANGE: Modifying DAT property. Its current value is 'C:\TEST\dat\'. Its new value: 'E:\TEST\dat\'.
MSI (c) (14!B8) [19:22:04:760]: PROPERTY CHANGE: Modifying COLOR_ICONS property. Its current value is 'C:\TEST\dat\color_icons\'. Its new value: 'E:\TEST\dat\color_icons\'.
MSI (c) (14!B8) [19:22:04:760]: PROPERTY CHANGE: Modifying OLP property. Its current value is 'C:\TEST\dat\olp\'. Its new value: 'E:\TEST\dat\olp\'.
But when I click on 'Install' button After the user changed the target path to other drive (Not Default drive) the 'OUT OF DISK SPACE' dialog pop up again.
How can I cause the system to recheck the disk space on the new drive and not on the default drive - When I click on Install button cause the setup to check the disk space on the new drive?
‎Apr 18, 2012
03:28 PM
The MSI documentation indicates that the OutOfDiskSpace and OutOfNoRbDiskSpace properties are valid after CostFinalize has run and the OutOfNoRbDiskSpace property (apparently not OutOfDiskSpace though) is dynamically updated with any operation that causes costing to run again (i.e. changing feature selection). The default dialog that would be displayed after clicking OK on the OutOfSpace dialog is the CustomSetup dialog which would allow for changing feature selections and destination paths, allowing for costing to run again.
If these property values are not changing, either costing is not running when target paths are changed, or:
1. There are components installing to paths still on the C: drive (the components are not installing to INSTALLDIR) and the drive does not have sufficient space for these components (for example, merge module components may be installing to locations still on C:).
2. If all components are installing to INSTALLDIR, the C: drive (if it contains the system root Windows folder) still does not contain sufficient free space for the cached MSI package (copied to C:\Windows\Installer by MSI during product registration) and any rollback files generated by Windows Installer.
If (1) is true above, component destinations could be changed in the project to install to INSTALLDIR or some subdirectory. However, (2) cannot be avoided as this is default behavior for MSI installations that can't be changed. Freeing up enough space on the C: drive to get the project to install would be required if (2) is true.
If these property values are not changing, either costing is not running when target paths are changed, or:
1. There are components installing to paths still on the C: drive (the components are not installing to INSTALLDIR) and the drive does not have sufficient space for these components (for example, merge module components may be installing to locations still on C:).
2. If all components are installing to INSTALLDIR, the C: drive (if it contains the system root Windows folder) still does not contain sufficient free space for the cached MSI package (copied to C:\Windows\Installer by MSI during product registration) and any rollback files generated by Windows Installer.
If (1) is true above, component destinations could be changed in the project to install to INSTALLDIR or some subdirectory. However, (2) cannot be avoided as this is default behavior for MSI installations that can't be changed. Freeing up enough space on the C: drive to get the project to install would be required if (2) is true.
‎Apr 19, 2012
04:32 AM
The main question remains:
If I change the destination folder (after noticed that there is not enough space in the default location ) - How can I run again costfinalize so the Installshield will now look up in the new destination folder??
The logics are working OK:
Run the Setup ---> Default ---> Ready to install ----> Not enough diskspace in C:\ ---> Custom Setup ----> change destination dialog ---> ready to install dialog ----> again not enough diskspace in C:\ (although we chose another destination with 20GB free ! (we are checking with a 1kb file! ).
Is there something to add to the event when changing the destination folder? Something to tell the installshield to calculate again for the new destination??
If I change the destination folder (after noticed that there is not enough space in the default location ) - How can I run again costfinalize so the Installshield will now look up in the new destination folder??
The logics are working OK:
Run the Setup ---> Default ---> Ready to install ----> Not enough diskspace in C:\
Is there something to add to the event when changing the destination folder? Something to tell the installshield to calculate again for the new destination??
‎Mar 01, 2013
02:07 PM
I realize this thread is almost a year old, but we've found that if there isn't enough space on c in the %temp% dir, the installer just cannot recover. Found this: http://kb.flexerasoftware.com/selfservice/viewContent.do?externalID=Q105366