This is an old revision of the document!


Resize system partition dynamically, based on size needed

  • tested under windows 7
  • tested under winst 4.11.5.13

In case you want your system partition to only use the amount of diskspace required by the applications you install, you can use the following code to extend your system partition dynamically before installing your software.

Integrate the following code into your installation script, and change the value of $MinimumFreeSpace$ to the amount of MB required by the software to install.

!!! Warning !!!

This can lead to problems if your applications or users are storing data on the system partition. If you use this, you should adopt further measures to prevent possible hickups - f.e. move profiles to another partition, configure your applications to store their data on another partition, prevent write access for users on the system partition. take care ;)

setup.ins

[Actions]
defVar $MinimumFreeSpace$ 
set $MinimumFreeSpace$ = "1024"
 
if not ( hasMinimumSpace( "%SystemDrive%", $MinimumFreeSpace$ + " MB" ) )
	execwith_resize diskpart /s
endif
 
comment "Exitcode: " + getLastExitCode
 
[execwith_resize]
SELECT volume %SystemDrive%
EXTEND size=$MinimumFreeSpace$

QR Code
QR Code userspace:diskpart_-_dynamic_system_partition_resize (generated for current page)