root/Cheat Engine/Release/Cheat Engine.iss @ 307

Revision 307, 13.8 kB (checked in by dark_byte, 8 months ago)

fixed advanced options no rightclick browse and marking changed entries red

Line 
1; Script generated by the Inno Setup Script Wizard.
2; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
3
4[Setup]
5AppName=Cheat Engine 5.6 BETA 4
6AppVerName=Cheat Engine 5.6 BETA 4
7AppPublisher=Dark Byte
8AppPublisherURL=http://www.cheatengine.org/
9AppSupportURL=http://www.cheatengine.org/
10AppUpdatesURL=http://www.cheatengine.org/
11DefaultDirName={pf}\Cheat Engine Beta4
12DefaultGroupName=Cheat Engine 5.6 BETA 4
13AllowNoIcons=yes
14LicenseFile=..\Release\License.txt
15InfoAfterFile=..\Release\readme.txt
16OutputBaseFilename=CheatEngine56Beta4
17PrivilegesRequired=admin
18ChangesAssociations=yes
19
20[UninstallDelete]
21Type: files; Name: "{app}\kerneldata.dat"
22Type: files; Name: "{app}\CEProtect.dat"
23Type: files; Name: "{app}\ADDRESSESFIRST.TMP"
24Type: files; Name: "{app}\MEMORYFIRST.TMP"
25Type: files; Name: "{app}\ADDRESSES.TMP"
26Type: files; Name: "{app}\MEMORY.TMP"
27
28[InstallDelete]
29Type: files; Name: "{app}\kerneldata.dat"
30Type: files; Name: "{app}\CEProtect.dat"
31Type: files; Name: "{app}\ADDRESSESFIRST.TMP"
32Type: files; Name: "{app}\MEMORYFIRST.TMP"
33Type: files; Name: "{app}\ADDRESSES.TMP"
34Type: files; Name: "{app}\MEMORY.TMP"
35
36[Registry]
37Root: HKCR; Subkey: ".CT"; ValueType: string; ValueName: ""; ValueData: "CheatEngine"; Flags: uninsdeletevalue
38Root: HKCR; Subkey: "CheatEngine"; ValueType: string; ValueName: ""; ValueData: "Cheat Engine"; Flags: uninsdeletekey
39Root: HKCR; Subkey: "CheatEngine\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\Cheat Engine.exe,0"
40Root: HKCR; Subkey: "CheatEngine\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\Cheat Engine.exe"" ""%1"""
41
42[Tasks]
43Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"
44
45[code]
46procedure UninstallDriver();
47var
48  ResultCode: Integer;
49begin
50  Exec(ExpandConstant('{app}Kernelmoduleunloader.exe'),'/SETUP',ExpandConstant('{app}'),0,ewWaitUntilTerminated,ResultCode);
51  //try to delete the dbk32.sys file if there is one there
52 
53  DeleteFile(ExpandConstant('{app}dbk32.sys'));
54  DeleteFile(ExpandConstant('{app}dbk32.bak'));
55
56  RenameFile(ExpandConstant('{app}dbk32.sys'),ExpandConstant('{app}dbk32.bak'));
57 
58  //lets remove all settings as well
59 
60 
61end;
62
63function NeedRestart(): Boolean;
64var restart: boolean;
65    ResultDWord: Cardinal;
66begin
67  restart:=false;
68
69  if RegQueryDWordValue(HKCU,'Software\Cheat Engine','Use Processwatcher',ResultDWord) then
70    if ResultDWord<>0 then restart:=true;
71
72  if RegQueryDWordValue(HKCU,'Software\Cheat Engine','Use Kernel Debugger',ResultDWord) then
73    if ResultDWord<>0 then restart:=true;
74   
75  result:=restart;
76end;
77
78//post install
79procedure CurStepChanged(CurStep: TSetupStep);
80var ResultDWord: Cardinal;
81begin
82  if CurStep=ssPostInstall then
83  begin
84    if RegKeyExists(HKEY_CURRENT_USER, 'Software\Cheat Engine') then
85    begin
86      if not RegQueryDWordValue(HKCU,'Software\Cheat Engine','First Time User',ResultDWord) then
87        ResultDWord:=1;
88   
89      RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER,'Software\Cheat Engine');
90      RegWriteDWordValue(HKEY_CURRENT_USER,  'Software\Cheat Engine', 'First Time User',ResultDWord);
91    end;
92  end;
93end;
94
95//uninstall
96
97function InitializeUninstall(): Boolean;
98begin
99  //run the unloader
100  UninstallDriver();
101  result:=true;
102end;
103
104function UninstallNeedRestart(): Boolean;
105var ResultDWord: Cardinal;
106begin
107  result:=false;
108  //check the registry
109  //if the kernel debugger is enabled, or the processwatcher enabled then return true
110  UninstallDriver(); //second time removes the link if the first time failed
111 
112  if RegQueryDWordValue(HKCU,'Software\Cheat Engine','Use Processwatcher',ResultDWord) then
113    if ResultDWord<>0 then result:=true;
114   
115  if RegQueryDWordValue(HKCU,'Software\Cheat Engine','Use Kernel Debugger',ResultDWord) then
116    if ResultDWord<>0 then result:=true;
117
118
119  //delete the reg
120  RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER,'Software\Cheat Engine');
121
122end;
123
124[Dirs]
125;go ahead, scream like a pig about this one, I know you want to
126Name: "{app}"; permissions: everyone-full;
127
128
129[Files]
130Source: "..\bin\cheatengine.exe"; DestDir: "{app}"; DestName: "Cheat Engine.exe"; Flags: ignoreversion
131Source: "..\bin\vmdisk.img"; DestDir: "{app}"; DestName: "vmdisk.img"; Flags: ignoreversion
132Source: "..\bin\CEHook.dll"; DestDir: "{app}"; DestName: "CEHook.dll"; Flags: ignoreversion
133Source: "..\bin\speedhack.dll"; DestDir: "{app}"; DestName: "speedhack.dll"; Flags: ignoreversion
134
135Source: "..\bin\commonmodulelist.txt"; DestDir: "{app}"; DestName: "commonmodulelist.txt"; Flags: ignoreversion
136Source: "..\LockedString.bmp"; DestDir: "{app}"; DestName: "LockedString.bmp"; Flags: ignoreversion
137Source: "..\UnLockedString.bmp"; DestDir: "{app}"; DestName: "UnLockedString.bmp"; Flags: ignoreversion
138Source: "..\TextureString.bmp"; DestDir: "{app}"; DestName: "TextureString.bmp"; Flags: ignoreversion
139Source: "..\targettexture.bmp"; DestDir: "{app}"; DestName: "targettexture.bmp"; Flags: ignoreversion
140Source: "..\movementtexture.bmp"; DestDir: "{app}"; DestName: "movementtexture.bmp"; Flags: ignoreversion
141Source: "..\Locktexture.bmp"; DestDir: "{app}"; DestName: "Locktexture.bmp"; Flags: ignoreversion
142Source: "..\Black.bmp"; DestDir: "{app}"; DestName: "Black.bmp"; Flags: ignoreversion
143Source: "..\bin\dxhook.dll"; DestDir: "{app}"; DestName: "dxhook.dll"; Flags: ignoreversion
144Source: "..\directxhook\D3DX81ab.dll"; DestDir: "{sys}"; DestName: "D3DX81ab.dll";
145Source: "..\directxhook\d3dx9.dll"; DestDir: "{sys}"; DestName: "d3dx9.dll";
146
147Source: "..\bin\ceregreset.exe"; DestDir: "{app}"; DestName: "ceregreset.exe"; Flags: ignoreversion
148Source: "..\bin\Kernelmoduleunloader.exe"; DestDir: "{app}"; DestName: "Kernelmoduleunloader.exe"; Flags: ignoreversion
149;Source: "..\driver.dat"; DestDir: "{app}"; DestName: "driver.dat"; Flags: ignoreversion
150;comment the next 2 lines for the baby version
151Source: "..\bin\dbk32.dll"; DestDir: "{app}"; DestName: "dbk32.dll"; Flags: ignoreversion
152Source: "..\bin\dbk32.sys"; DestDir: "{app}"; DestName: "dbk32.sys"; Flags: ignoreversion; BeforeInstall: UninstallDriver
153Source: "..\bin\dbk64.sys"; DestDir: "{app}"; DestName: "dbk64.sys"; Flags: ignoreversion;
154Source: "..\bin\EmptyProcess.exe"; DestDir: "{app}"; DestName: "EmptyProcess.exe"; Flags: ignoreversion
155Source: "..\bin\EmptyDLL.dll"; DestDir: "{app}"; DestName: "EmptyDLL.dll"; Flags: ignoreversion
156Source: "..\bin\Systemcallretriever.exe"; DestDir: "{app}"; DestName: "Systemcallretriever.exe"; Flags: ignoreversion
157Source: "..\bin\systemcallsignal.exe"; DestDir: "{app}"; DestName: "systemcallsignal.exe"; Flags: ignoreversion
158
159;Source: "..\stealth.dll"; DestDir: "{app}"; DestName: "stealth.dll"; Flags: ignoreversion
160
161Source: "..\bin\CheatEngine.chm"; DestDir: "{app}"; DestName: "CheatEngine.chm"; Flags: ignoreversion
162
163Source: "..\bin\tutorial.exe"; DestDir: "{app}"; DestName: "Tutorial.exe"; Flags: ignoreversion
164
165;Source: "..\Cheat Engine Net\Client\client.exe"; DestDir: "{app}"; DestName: "Cheat Engine Client.exe"; Flags: ignoreversion
166;Source: "..\Cheat Engine Net\Server\ceserver.exe"; DestDir: "{app}"; DestName: "Cheat Engine Server.exe"; Flags: ignoreversion
167;Source: "..\Cheat Engine Client.exe"; DestDir: "{app}"; DestName: "Cheat Engine Client.exe"; Flags: ignoreversion
168;Source: "..\Cheat Engine Server.exe"; DestDir: "{app}"; DestName: "Cheat Engine Server.exe"; Flags: ignoreversion
169
170
171;plugin sdk
172Source: "..\plugin\cepluginsdk.pas"; DestDir: "{app}\Plugins\"; Flags: ignoreversion
173Source: "..\plugin\cepluginsdk.h"; DestDir: "{app}\Plugins\"; Flags: ignoreversion
174
175; Plugin example
176Source: "..\plugin\example-c\release\example-c.dll"; DestDir: "{app}\Plugins\example-c\"; DestName: "example-c.dll"; Flags: ignoreversion
177Source: "..\plugin\example-c\example-c.c"; DestDir: "{app}\Plugins\example-c\"; DestName: "example-c.c"; Flags: ignoreversion
178Source: "..\plugin\example-c\example-c.def"; DestDir: "{app}\Plugins\example-c\"; DestName: "example-c.def"; Flags: ignoreversion
179;Source: "..\plugin\example-c\ceplugin.h"; DestDir: "{app}\Plugins\example-c\"; DestName: "plugin.h"; Flags: ignoreversion
180Source: "..\plugin\example-c\example-c.sln"; DestDir: "{app}\Plugins\example-c\"; DestName: "example-c.sln"; Flags: ignoreversion
181Source: "..\plugin\example-c\example-c.vcproj"; DestDir: "{app}\Plugins\example-c\"; DestName: "example-c.vcproj"; Flags: ignoreversion
182
183; Delphi Plugin example
184Source: "..\plugin\example\exampleplugin.dll"; DestDir: "{app}\Plugins\example-delphi\"; DestName: "exampleplugin.dll"; Flags: ignoreversion
185Source: "..\plugin\example\exampleplugin.cfg"; DestDir: "{app}\Plugins\example-delphi\"; DestName: "exampleplugin.cfg"; Flags: ignoreversion
186Source: "..\plugin\example\exampleplugin.dof"; DestDir: "{app}\Plugins\example-delphi\"; DestName: "exampleplugin.dof"; Flags: ignoreversion
187Source: "..\plugin\example\exampleplugin.res"; DestDir: "{app}\Plugins\example-delphi\"; DestName: "exampleplugin.res"; Flags: ignoreversion
188Source: "..\plugin\example\exampleplugin.dpr"; DestDir: "{app}\Plugins\example-delphi\"; DestName: "exampleplugin.dpr"; Flags: ignoreversion
189Source: "..\plugin\example\Unit1.pas"; DestDir: "{app}\Plugins\example-delphi\"; DestName: "Unit1.pas"; Flags: ignoreversion
190
191;Packet editor plugin example
192;Source: "..\plugin\packet editor\packeteditor.dll"; DestDir: "{app}\Plugins\example packet editor\"; Flags: ignoreversion
193;Source: "..\plugin\packet editor\inject\cepe.dll"; DestDir: "{app}\Plugins\example packet editor\inject\"; Flags: ignoreversion
194
195;Packet editor plugin example source
196Source: "..\plugin\packet editor\src\packeteditor.cfg"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
197Source: "..\plugin\packet editor\src\packeteditor.dof"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
198Source: "..\plugin\packet editor\src\packeteditor.dpr"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
199Source: "..\plugin\packet editor\src\packeteditor.res"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
200Source: "..\plugin\packet editor\src\Unit1.pas"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
201Source: "..\plugin\packet editor\src\injector.pas"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
202;Source: "..\plugin\packet editor\src\cepluginsdk.pas"; DestDir: "{app}\Plugins\example packet editor\src\"; Flags: ignoreversion
203
204Source: "..\plugin\packet editor\inject\src\cepe.cfg"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
205Source: "..\plugin\packet editor\inject\src\cepe.dof"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
206Source: "..\plugin\packet editor\inject\src\cepe.dpr"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
207Source: "..\plugin\packet editor\inject\src\cepe.res"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
208Source: "..\plugin\packet editor\inject\src\filterform.dfm"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
209Source: "..\plugin\packet editor\inject\src\filterform.pas"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
210Source: "..\plugin\packet editor\inject\src\hexedit.pas"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
211Source: "..\plugin\packet editor\inject\src\mainunit.dfm"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
212Source: "..\plugin\packet editor\inject\src\mainunit.pas"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
213Source: "..\plugin\packet editor\inject\src\packetfilter.pas"; DestDir: "{app}\Plugins\example packet editor\inject\src\"; Flags: ignoreversion
214
215;Debug event log example
216
217Source: "..\plugin\DebugEventLog\src\DebugEventLog.dll"; DestDir: "{app}\Plugins\DebugEventLog\"; Flags: ignoreversion
218
219;Debug event log example source
220Source: "..\plugin\DebugEventLog\src\DebugEventLog.cfg"; DestDir: "{app}\Plugins\DebugEventLog\src"; Flags: ignoreversion
221Source: "..\plugin\DebugEventLog\src\DebugEventLog.dpr"; DestDir: "{app}\Plugins\DebugEventLog\src"; Flags: ignoreversion
222Source: "..\plugin\DebugEventLog\src\DebugEventLog.res"; DestDir: "{app}\Plugins\DebugEventLog\src"; Flags: ignoreversion
223Source: "..\plugin\DebugEventLog\src\exportimplementation.pas"; DestDir: "{app}\Plugins\DebugEventLog\src"; Flags: ignoreversion
224Source: "..\plugin\DebugEventLog\src\frmEventLogUnit.dfm"; DestDir: "{app}\Plugins\DebugEventLog\src"; Flags: ignoreversion
225Source: "..\plugin\DebugEventLog\src\frmEventLogUnit.pas"; DestDir: "{app}\Plugins\DebugEventLog\src"; Flags: ignoreversion
226
227
228
229Source: "..\include\*"; DestDir: "{app}\include\";
230Source: "..\example scripts\*"; DestDir: "{app}\example scripts\";
231Source: "..\bin\ucc12.dll"; DestDir: "{app}";
232Source: "..\bin\undercdll.dll"; DestDir: "{app}";
233
234; NOTE: Don't use "Flags: ignoreversion" on any shared system files
235
236[Icons]
237Name: "{group}\Cheat Engine 5.6 Beta"; Filename: "{app}\Cheat Engine.exe"
238Name: "{group}\Cheat Engine tutorial"; Filename: "{app}\Tutorial.exe"
239Name: "{group}\Cheat Engine help"; Filename: "{app}\CheatEngine.chm"
240
241Name: "{group}\Kernel stuff\Unload kernel module"; Filename: "{app}\Kernelmoduleunloader.exe"
242Name: "{group}\Kernel stuff\Gather kernel data"; Filename: "{app}\Systemcallretriever.exe"
243Name: "{group}\Reset settings"; Filename: "{app}\ceregreset.exe"
244
245Name: "{group}\Uninstall Cheat Engine"; Filename: "{uninstallexe}"
246Name: "{userdesktop}\Cheat Engine"; Filename: "{app}\Cheat Engine.exe"; Tasks: desktopicon
247
248[Run]
249Filename: "{app}\Cheat Engine.exe"; Description: "Launch Cheat Engine 5.6"; Flags: nowait postinstall skipifsilent runascurrentuser
Note: See TracBrowser for help on using the browser.