Difference between revisions of "TrueCrypt"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
m (TrueCrypt 7.0a)
m
Line 10: Line 10:
 
Copy and save this truecrypt.iss:
 
Copy and save this truecrypt.iss:
  
[Setup]
+
<source lang="ini">
AppName=TrueCrypt
+
[Setup]
AppVerName=TrueCrypt 7.0a
+
AppName=TrueCrypt
DefaultDirName={pf}\TrueCrypt
+
AppVerName=TrueCrypt 7.0a
VersionInfoVersion=7.0.1
+
DefaultDirName={pf}\TrueCrypt
VersionInfoCompany=TrueCrypt Foundation
+
VersionInfoVersion=7.0.1
DefaultGroupName=TrueCrypt
+
VersionInfoCompany=TrueCrypt Foundation
VersionInfoProductName=TrueCrypt
+
DefaultGroupName=TrueCrypt
[Icons]
+
VersionInfoProductName=TrueCrypt
Name: {group}\TrueCrypt; Filename: {app}\TrueCrypt.exe; IconFilename: {app}\TrueCrypt.exe
+
[Icons]
Name: {group}\TrueCrypt User Guide; Filename: {app}\TrueCrypt User Guide.pdf
+
Name: {group}\TrueCrypt; Filename: {app}\TrueCrypt.exe; IconFilename: {app}\TrueCrypt.exe
Name: {group}\Uninstall TrueCrypt; Filename: {app}\unins000.exe
+
Name: {group}\TrueCrypt User Guide; Filename: {app}\TrueCrypt User Guide.pdf
Name: {commondesktop}\TrueCrypt; Filename: {app}\TrueRunAs.exe
+
Name: {group}\Uninstall TrueCrypt; Filename: {app}\unins000.exe
[Files]
+
Name: {commondesktop}\TrueCrypt; Filename: {app}\TrueRunAs.exe
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt.exe; DestDir: {app}
+
[Files]
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt User Guide.pdf; DestDir: {app}
+
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt.exe; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt Format.exe; DestDir: {app}
+
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt User Guide.pdf; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\truecrypt.sys; DestDir: {app}
+
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt Format.exe; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\truecrypt.sys; DestDir: {sys}\drivers
+
Source: c:\source\truecrypt\truecrypt70a\truecrypt.sys; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\truecrypt-x64.sys; DestDir: {app}
+
Source: c:\source\truecrypt\truecrypt70a\truecrypt.sys; DestDir: {sys}\drivers
Source: c:\source\truecrypt\truecrypt70a\truecrypt-x64.sys; DestDir: {sys}\drivers
+
Source: c:\source\truecrypt\truecrypt70a\truecrypt-x64.sys; DestDir: {app}
[Registry]
+
Source: c:\source\truecrypt\truecrypt70a\truecrypt-x64.sys; DestDir: {sys}\drivers
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume; ValueType: string; ValueName: ; ValueData: TrueCrypt Volume
+
[Registry]
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume; ValueType: string; ValueName: AppUserModelID; ValueData: TrueCryptFoundation.TrueCrypt
+
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume; ValueType: string; ValueName: ; ValueData: TrueCrypt Volume
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume\DefaultIcon; ValueType: string; ValueName: ; ValueData: {pf}\TrueCrypt\TrueCrypt.exe,1
+
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume; ValueType: string; ValueName: AppUserModelID; ValueData: TrueCryptFoundation.TrueCrypt
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume\Shell\open\command; ValueType: string; ValueName: ; ValueData: "\""{pf}""\TrueCrypt\TrueCrypt.exe\"" /v \""%1\"""
+
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume\DefaultIcon; ValueType: string; ValueName: ; ValueData: {pf}\TrueCrypt\TrueCrypt.exe,1
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: Type; ValueData: $00000001
+
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume\Shell\open\command; ValueType: string; ValueName: ; ValueData: "\""{pf}""\TrueCrypt\TrueCrypt.exe\"" /v \""%1\"""
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: Start; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: Type; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: ErrorControl; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: Start; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: string; ValueName: ImagePath; ValueData: hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,74,00,72,00,75,00,65,00,63,00,72,00,79,00,70,00,74,00,2e,00,73,00,79,00,73,00,00,00
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: ErrorControl; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: string; ValueName: DisplayName; ValueData: truecrypt
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: string; ValueName: ImagePath; ValueData: hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,74,00,72,00,75,00,65,00,63,00,72,00,79,00,70,00,74,00,2e,00,73,00,79,00,73,00,00,00
Root: HKLM; SubKey: SOFTWARE\Classes\.tc; ValueType: string; ValueName: ; ValueData: TrueCryptVolume
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: string; ValueName: DisplayName; ValueData: truecrypt
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Security; ValueType: binary; ValueName: Security; ValueData: 01 00 14 80 90 00 00 00 9c 00 00 00 14 00 00 00 30 00 00 00 02 00 1c 00 01 00 00 00 02 80 14 00 ff 01 0f 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 fd 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 ff 01 0f 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8d 01 02 00 01 01 00 00 00 00 00 05 0b 00 00 00 00 00 18 00 fd 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
+
Root: HKLM; SubKey: SOFTWARE\Classes\.tc; ValueType: string; ValueName: ; ValueData: TrueCryptVolume
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Enum; ValueType: dword; ValueName: Count; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Security; ValueType: binary; ValueName: Security; ValueData: 01 00 14 80 90 00 00 00 9c 00 00 00 14 00 00 00 30 00 00 00 02 00 1c 00 01 00 00 00 02 80 14 00 ff 01 0f 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 fd 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 ff 01 0f 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8d 01 02 00 01 01 00 00 00 00 00 05 0b 00 00 00 00 00 18 00 fd 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Enum; ValueType: dword; ValueName: NextInstance; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Enum; ValueType: dword; ValueName: Count; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: Type; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Enum; ValueType: dword; ValueName: NextInstance; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: Start; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: Type; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: ErrorControl; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: Start; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: string; ValueName: ImagePath; ValueData: hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,74,00,72,00,75,00,65,00,63,00,72,00,79,00,70,00,74,00,2e,00,73,00,79,00,73,00,00,00
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: ErrorControl; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: string; ValueName: DisplayName; ValueData: truecrypt
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: string; ValueName: ImagePath; ValueData: hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,74,00,72,00,75,00,65,00,63,00,72,00,79,00,70,00,74,00,2e,00,73,00,79,00,73,00,00,00
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Security; ValueType: binary; ValueName: Security; ValueData: 01 00 14 80 90 00 00 00 9c 00 00 00 14 00 00 00 30 00 00 00 02 00 1c 00 01 00 00 00 02 80 14 00 ff 01 0f 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 fd 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 ff 01 0f 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8d 01 02 00 01 01 00 00 00 00 00 05 0b 00 00 00 00 00 18 00 fd 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: string; ValueName: DisplayName; ValueData: truecrypt
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Enum; ValueType: dword; ValueName: Count; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Security; ValueType: binary; ValueName: Security; ValueData: 01 00 14 80 90 00 00 00 9c 00 00 00 14 00 00 00 30 00 00 00 02 00 1c 00 01 00 00 00 02 80 14 00 ff 01 0f 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 fd 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 ff 01 0f 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8d 01 02 00 01 01 00 00 00 00 00 05 0b 00 00 00 00 00 18 00 fd 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Enum; ValueType: dword; ValueName: NextInstance; ValueData: $00000001
+
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Enum; ValueType: dword; ValueName: Count; ValueData: $00000001
 +
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Enum; ValueType: dword; ValueName: NextInstance; ValueData: $00000001
 +
</source>
  
 
Your package should look like this, notice the /VERYSILENT on the setup.exe line
 
Your package should look like this, notice the /VERYSILENT on the setup.exe line
  
<package id="truecrypt70a"
+
<source lang="xml">
 +
<package id="truecrypt70a"
 
           name="TrueCrypt 7.0a"
 
           name="TrueCrypt 7.0a"
 
           revision="7.0.1"
 
           revision="7.0.1"
Line 65: Line 68:
 
           <upgrade cmd='cmd /c %SOFTWARE%\truecrypt\truecrypt70a-setup.exe /verysilent ' />
 
           <upgrade cmd='cmd /c %SOFTWARE%\truecrypt\truecrypt70a-setup.exe /verysilent ' />
 
           <remove cmd='cmd /c %PROGRAMFILES%\truecrypt\unins000.exe /verysilent ' />
 
           <remove cmd='cmd /c %PROGRAMFILES%\truecrypt\unins000.exe /verysilent ' />
</package>
+
</package>
 +
</source>
  
 
== TrueCrypt ==
 
== TrueCrypt ==

Revision as of 09:13, 28 September 2010

TrueCrypt 7.0a

To create a silent installer of 7.0a and allow normal users to create containers involves two steps. First you must use Inno Setup to create an ISS file (below) and then use ISTool to compile it. Secondly you must use a RunAs compiler to create an 'Admin' elevated version of the TrueCrypt.exe so that 'normal users' can run TrueCrypt.

You can download Inno tools here http://www.jrsoftware.org/isinfo.php and you can find an old version of Steel RunAs (ver 1.2) online.

The 'more smarter ones than me' of you may find that some of the registry HKLM lines are redundant.

Download and extract the latest TrueCrypt 7.0a to get the necessary files for the source folder. Create a TrueRunAs.exe using the Steel RunAs tool. The path in RunAs should be "c:\program files\truecrypt\truecrypt.exe".

Copy and save this truecrypt.iss:

[Setup]
AppName=TrueCrypt
AppVerName=TrueCrypt 7.0a
DefaultDirName={pf}\TrueCrypt
VersionInfoVersion=7.0.1
VersionInfoCompany=TrueCrypt Foundation
DefaultGroupName=TrueCrypt
VersionInfoProductName=TrueCrypt
[Icons]
Name: {group}\TrueCrypt; Filename: {app}\TrueCrypt.exe; IconFilename: {app}\TrueCrypt.exe
Name: {group}\TrueCrypt User Guide; Filename: {app}\TrueCrypt User Guide.pdf
Name: {group}\Uninstall TrueCrypt; Filename: {app}\unins000.exe
Name: {commondesktop}\TrueCrypt; Filename: {app}\TrueRunAs.exe
[Files]
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt.exe; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt User Guide.pdf; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\TrueCrypt Format.exe; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\truecrypt.sys; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\truecrypt.sys; DestDir: {sys}\drivers
Source: c:\source\truecrypt\truecrypt70a\truecrypt-x64.sys; DestDir: {app}
Source: c:\source\truecrypt\truecrypt70a\truecrypt-x64.sys; DestDir: {sys}\drivers
[Registry]
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume; ValueType: string; ValueName: ; ValueData: TrueCrypt Volume
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume; ValueType: string; ValueName: AppUserModelID; ValueData: TrueCryptFoundation.TrueCrypt
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume\DefaultIcon; ValueType: string; ValueName: ; ValueData: {pf}\TrueCrypt\TrueCrypt.exe,1
Root: HKLM; SubKey: SOFTWARE\Classes\TrueCryptVolume\Shell\open\command; ValueType: string; ValueName: ; ValueData: "\""{pf}""\TrueCrypt\TrueCrypt.exe\"" /v \""%1\"""
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: Type; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: Start; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: dword; ValueName: ErrorControl; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: string; ValueName: ImagePath; ValueData: hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,74,00,72,00,75,00,65,00,63,00,72,00,79,00,70,00,74,00,2e,00,73,00,79,00,73,00,00,00
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt; ValueType: string; ValueName: DisplayName; ValueData: truecrypt
Root: HKLM; SubKey: SOFTWARE\Classes\.tc; ValueType: string; ValueName: ; ValueData: TrueCryptVolume
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Security; ValueType: binary; ValueName: Security; ValueData: 01 00 14 80 90 00 00 00 9c 00 00 00 14 00 00 00 30 00 00 00 02 00 1c 00 01 00 00 00 02 80 14 00 ff 01 0f 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 fd 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 ff 01 0f 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8d 01 02 00 01 01 00 00 00 00 00 05 0b 00 00 00 00 00 18 00 fd 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Enum; ValueType: dword; ValueName: Count; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\truecrypt\Enum; ValueType: dword; ValueName: NextInstance; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: Type; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: Start; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: dword; ValueName: ErrorControl; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: string; ValueName: ImagePath; ValueData: hex(2):53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,00,69,00,76,00,65,00,72,00,73,00,5c,00,74,00,72,00,75,00,65,00,63,00,72,00,79,00,70,00,74,00,2e,00,73,00,79,00,73,00,00,00
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt; ValueType: string; ValueName: DisplayName; ValueData: truecrypt
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Security; ValueType: binary; ValueName: Security; ValueData: 01 00 14 80 90 00 00 00 9c 00 00 00 14 00 00 00 30 00 00 00 02 00 1c 00 01 00 00 00 02 80 14 00 ff 01 0f 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 fd 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 ff 01 0f 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8d 01 02 00 01 01 00 00 00 00 00 05 0b 00 00 00 00 00 18 00 fd 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Enum; ValueType: dword; ValueName: Count; ValueData: $00000001
Root: HKLM; SubKey: SYSTEM\ControlSet001\Services\truecrypt\Enum; ValueType: dword; ValueName: NextInstance; ValueData: $00000001

Your package should look like this, notice the /VERYSILENT on the setup.exe line

<package id="truecrypt70a"
          name="TrueCrypt 7.0a"
          revision="7.0.1"
          priority="0"
          reboot="false">
          <check type="uninstall" condition="exists" path="TrueCrypt 7.0a" />
          <install cmd='cmd /c %SOFTWARE%\truecrypt\truecrypt70a-setup.exe /verysilent ' />
          <upgrade cmd='cmd /c %SOFTWARE%\truecrypt\truecrypt70a-setup.exe /verysilent ' />
          <remove cmd='cmd /c %PROGRAMFILES%\truecrypt\unins000.exe /verysilent ' />
</package>

TrueCrypt

This is a silent installer for TrueCrypt, a program for using files or partitions as encrypted volumes. Very high level of security is offered alongside with hidden volumes etc.

Unfortunately it currently doesn't have a silent installer. The following uses msi-packet from RogueSpear (Registration to forums required). Msi-packet doesn't support silent uninstalling.

<package id="TrueCrypt" name="TrueCrypt" revision="611" reboot="false" priority="50">
	<check type="uninstall" condition="exists" path="TrueCrypt 6.1a" />
	<install cmd='msiexec /qn /i "%SOFTWARE%\TrueCrypt\TrueCrypt V6.1a.msi" allusers=1' />
	<upgrade cmd='msiexec /qn /i "%SOFTWARE%\TrueCrypt\TrueCrypt V6.1a.msi" allusers=1' />
</package>