User Tools

Site Tools


userspace:diskpart_-_dynamic_system_partition_resize

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
userspace:diskpart_-_dynamic_system_partition_resize [2015/09/17 17:07]
larsg created
userspace:diskpart_-_dynamic_system_partition_resize [2021/08/23 08:37] (current)
Line 1: Line 1:
 ====== Resize system partition dynamically, based on size needed ====== ====== Resize system partition dynamically, based on size needed ======
  
-   created by LarsG [[algee2005@gmail.com]] 2015/09/17+created by LarsG [[lars.gruenheid@civitec.de]] 2015/09/17
  
    * tested under windows 7    * tested under windows 7
    * tested under winst 4.11.5.13    * 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,+In case you want your system partition to only use the amount of diskspace required by the system and the applications you install,
 you can use the following code to extend your system partition dynamically before installing your software. 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 !!!**
  
-!!! Warning !!!+Using this can lead to problems if your applications or users are storing data on the system partition.
  
-This can lead to problems if your applications or users are storing data on the system partition. +If you want use this, you should consider adopting 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.  
-If you use this, you should adopt further measures to prevent possible hickups -  +Take care ;) 
-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 ;)+ 
 + 
 +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; 1 GB equals ''1024'', like given as example below.
  
-==== setup.ins ==== 
 <code winst> <code winst>
-[Actions]+[actions]
 defVar $MinimumFreeSpace$  defVar $MinimumFreeSpace$ 
 set $MinimumFreeSpace$ = "1024" set $MinimumFreeSpace$ = "1024"
  
 if not ( hasMinimumSpace( "%SystemDrive%", $MinimumFreeSpace$ + " MB" ) ) if not ( hasMinimumSpace( "%SystemDrive%", $MinimumFreeSpace$ + " MB" ) )
- execwith_resize diskpart /s+ comment "Not enough free space left, trying to extend volume %SystemDrive% by " + $MinimumFreeSpace$ + " MB." 
 + execwith_resize_volume diskpart /s 
 + if not ( hasMinimumSpace( "%SystemDrive%", $MinimumFreeSpace$ + " MB" ) ) 
 + logError "Failed to resize volume, cancel installation" 
 + isFatalError 
 + endif 
 +else 
 + comment "Still enough free space left, continue with installation"
 endif endif
 +</code>
  
-comment "Exitcode: " + getLastExitCode+<code winst> 
 +[execwith_resize_volume] 
 +select volume %SystemDrive% 
 +extend size=$MinimumFreeSpace$ 
 +</code>
  
-[execwith_resize] +This script assumes you install software on your system partition. Otherwise, you need to replace any occurance of ''%SystemDrive%'' within my code with the drive letter of your desired partition. 
-SELECT volume %SystemDrive% +f.e. extract it like this: 
-EXTEND size=$MinimumFreeSpace$+ 
 +<code winst> 
 +defVar $InstallDrive$ 
 +set $InstallDrive$ takeString(0,splitString($InstallDir$,"\"))
 </code> </code>
userspace/diskpart_-_dynamic_system_partition_resize.1442509647.txt.gz · Last modified: 2021/08/23 08:37 (external edit)