Thinstall supports packages of unlimited sizes, however on some
Windows platforms the windows shell (explorer.exe) has limitations
on how it displays icons and may not display the icon for an EXE
file once it reaches a certain size.
Explorer.exe tries to map the entire EXE file into memory so it can
access the Icon resources. If there is not enough available virtual
memory address space, this file mapping operation will fail.
Typically an application will have a maximum of 2GB of address
space, though DLLs, the process heap, and other objects will break
up the virtual address space so a smaller maximum block is actually
available. On most computers, Windows XP will not display icons for
EXE files larger then 600MB. Windows Vista does not appear to have
this limitation.
Luckily there is a very easy work-around for this problem. When
building a large package, you can create two files:
- One large file containing the package data
- One small file containing Icon Information
Example (Before): package.ini
----------------------------------------------
[LargeApplication.exe]
Source=%ProgramFilesDir%\LargeApplication.exe
ReadOnlyData=bin\Package.ro.tvr ----------------------------------------------
Example (After): package.ini
----------------------------------------------
[LargeApplication.dat]
Source=%ProgramFilesDir%\LargeApplication.exe
ReadOnlyData=bin\Package.ro.tvr