Difference between revisions of "TrueCrypt"
m (→TrueCrypt 7.0a) |
m |
||
Line 10: | Line 10: | ||
Copy and save this truecrypt.iss: | Copy and save this truecrypt.iss: | ||
− | + | <source lang="ini"> | |
− | + | [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 | ||
+ | </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 | ||
− | + | <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> | |
+ | </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>