added hl2launch to the installer

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40170
This commit is contained in:
Christian Hammacher 2005-12-28 00:09:55 +00:00
parent 88fc27abd6
commit 54f678eb61
7 changed files with 138 additions and 59 deletions

View File

@ -13,6 +13,13 @@ begin
WriteLn(''); WriteLn('');
WriteLn('// Looking up files...'); WriteLn('// Looking up files...');
{ Check files } { Check files }
if FileExists(ExtractFilePath(ParamStr(0)) + 'files\hl2launch.exe') then
WriteLn('// Found files\hl2launch.exe')
else begin
WriteLn('// Error: Couldn''t find files\hl2launch.exe!');
ReadLn;
exit;
end;
if FileExists(ExtractFilePath(ParamStr(0)) + 'files\server.dll') then if FileExists(ExtractFilePath(ParamStr(0)) + 'files\server.dll') then
WriteLn('// Found files\server.dll') WriteLn('// Found files\server.dll')
else begin else begin
@ -37,6 +44,7 @@ begin
{ Compress files } { Compress files }
WriteLn('// Compressing files...'); WriteLn('// Compressing files...');
eFiles := TStringList.Create; eFiles := TStringList.Create;
eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\hl2launch.exe');
eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\server.dll'); eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\server.dll');
eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\server_i486.so'); eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\server_i486.so');
eStream := TMemoryStream.Create; eStream := TMemoryStream.Create;

Binary file not shown.

Binary file not shown.

View File

@ -13,7 +13,7 @@ procedure AddSkipped;
procedure AddNotFound; procedure AddNotFound;
procedure DownloadFile(eFile: String; eDestination: String); procedure DownloadFile(eFile: String; eDestination: String);
procedure BasicInstallation(ePath: String; SteamInstall: Boolean; OS: TOS); procedure BasicInstallation(ePath: String; SteamInstall, ListenInstall: Boolean; OS: TOS);
procedure InstallDedicated(eModPath: String; UseSteam: Boolean); procedure InstallDedicated(eModPath: String; UseSteam: Boolean);
procedure InstallListen(ePath: String); procedure InstallListen(ePath: String);
procedure InstallCustom(ePath: String; eOS: TOS); procedure InstallCustom(ePath: String; eOS: TOS);
@ -218,13 +218,13 @@ end;
{ Basic Installation } { Basic Installation }
procedure BasicInstallation(ePath: String; SteamInstall: Boolean; OS: TOS); procedure BasicInstallation(ePath: String; SteamInstall, ListenInstall: Boolean; OS: TOS);
var eStr: TStringList; var eStr: TStringList;
i: integer; i: integer;
CopyConfig: Boolean; CopyConfig: Boolean;
eFound: Boolean; eFound: Boolean;
begin begin
frmMain.ggeAll.MaxValue := 7; frmMain.ggeAll.MaxValue := 8;
frmMain.ggeAll.Progress := 0; frmMain.ggeAll.Progress := 0;
frmMain.ggeItem.MaxValue := 1; frmMain.ggeItem.MaxValue := 1;
frmMain.ggeItem.Progress := 0; frmMain.ggeItem.Progress := 0;
@ -257,8 +257,9 @@ begin
AddDone; AddDone;
frmMain.ggeAll.Progress := 2; frmMain.ggeAll.Progress := 2;
frmMain.ggeItem.Progress := 1; frmMain.ggeItem.Progress := 1;
{ Check for installation } { Check for installation / Create directories }
CopyConfig := True; CopyConfig := True;
AddStatus('Creating directories...', clBlack);
if DirectoryExists(ePath + 'addons\metamod\bin') then begin if DirectoryExists(ePath + 'addons\metamod\bin') then begin
case MessageBox(frmMain.Handle, 'A Metamod:Source installation was already detected. If you choose to reinstall, your configuration files will be erased. Click Yes to continue, No to Upgrade, or Cancel to abort the install.', PChar(frmMain.Caption), MB_ICONQUESTION + MB_YESNOCANCEL) of case MessageBox(frmMain.Handle, 'A Metamod:Source installation was already detected. If you choose to reinstall, your configuration files will be erased. Click Yes to continue, No to Upgrade, or Cancel to abort the install.', PChar(frmMain.Caption), MB_ICONQUESTION + MB_YESNOCANCEL) of
mrNo: CopyConfig := False; mrNo: CopyConfig := False;
@ -267,16 +268,13 @@ begin
exit; exit;
end; end;
end; end;
end; AddSkipped;
AddStatus('Creating directories...', clBlack); end
if not eFound then begin else begin
{ Create directories }
frmMain.ggeItem.Progress := 0; frmMain.ggeItem.Progress := 0;
ForceDirectories(ePath + 'addons\metamod\bin'); ForceDirectories(ePath + 'addons\metamod\bin');
AddDone; AddDone;
end end;
else
AddSkipped;
frmMain.ggeItem.Progress := 1; frmMain.ggeItem.Progress := 1;
frmMain.ggeAll.Progress := 3; frmMain.ggeAll.Progress := 3;
@ -322,9 +320,9 @@ begin
break; break;
end; end;
end; end;
FileSetAttr(ePath + 'gameinfo.txt', 0); SetFileAttributes(PChar(ePath + 'gameinfo.txt'), 0);
eStr.SaveToFile(ePath + 'gameinfo.txt'); eStr.SaveToFile(ePath + 'gameinfo.txt');
FileSetAttr(ePath + 'gameinfo.txt', faReadOnly); // important for listen servers SetFileAttributes(PChar(ePath + 'gameinfo.txt'), faReadOnly); // important for listen servers
AddDone; AddDone;
end end
else else
@ -340,21 +338,30 @@ begin
AddDone; AddDone;
frmMain.ggeItem.Progress := 1; frmMain.ggeItem.Progress := 1;
frmMain.ggeAll.Progress := 6; frmMain.ggeAll.Progress := 6;
if ListenInstall then begin
ePath := ExtractFilePath(Copy(ePath, 1, Length(ePath)-1));
AddStatus('Copying hl2launch.exe...', clBlack);
CopyFile(PChar(ExtractFilePath(ParamStr(0)) + 'hl2launch.exe'), PChar(ePath + 'hl2launch.exe'), False);
AddDone;
end;
{ Remove files } { Remove files }
frmMain.ggeItem.Progress := 0; frmMain.ggeItem.Progress := 0;
AddStatus('Removing temporary files...', clBlack); AddStatus('Removing temporary files...', clBlack);
DeleteFile(PChar(ExtractFilePath(ParamStr(0)) + 'hl2launch.exe'));
DeleteFile(PChar(ExtractFilePath(ParamStr(0)) + 'server.dll')); DeleteFile(PChar(ExtractFilePath(ParamStr(0)) + 'server.dll'));
DeleteFile(PChar(ExtractFilePath(ParamStr(0)) + 'server_i486.so')); DeleteFile(PChar(ExtractFilePath(ParamStr(0)) + 'server_i486.so'));
AddDone; AddDone;
frmMain.ggeItem.Progress := 1; frmMain.ggeItem.Progress := 1;
frmMain.ggeAll.Progress := 7; frmMain.ggeAll.Progress := 8;
{ Finish } { Finish }
AddStatus('', clBlack, False); AddStatus('', clBlack, False);
AddStatus('Finished installation!', clBlack, False); AddStatus('Finished installation!', clBlack, False);
frmMain.cmdNext.Enabled := True; frmMain.cmdNext.Enabled := True;
frmMain.cmdCancel.Hide; frmMain.cmdCancel.Hide;
Screen.Cursor := crDefault; Screen.Cursor := crDefault;
if ListenInstall then
MessageBox(frmMain.Handle, PChar('hl2launch.exe has been copied to ' + ePath + '. Start it if you want to use Metamod:Source on your listen server, default starts won''t work.'), PChar(Application.Title), MB_ICONINFORMATION);
end; end;
{ Dedicated Server } { Dedicated Server }
@ -364,7 +371,7 @@ begin
StartTime := Now; StartTime := Now;
Screen.Cursor := crHourGlass; Screen.Cursor := crHourGlass;
AddStatus('Starting Metamod:Source installation on dedicated server...', clBlack, False); AddStatus('Starting Metamod:Source installation on dedicated server...', clBlack, False);
BasicInstallation(eModPath, UseSteam, osWindows); BasicInstallation(eModPath, UseSteam, False, osWindows);
end; end;
{ Listen Server } { Listen Server }
@ -374,7 +381,7 @@ begin
StartTime := Now; StartTime := Now;
Screen.Cursor := crHourGlass; Screen.Cursor := crHourGlass;
AddStatus('Starting Metamod:Source installation on the listen server...', clBlack); AddStatus('Starting Metamod:Source installation on the listen server...', clBlack);
BasicInstallation(ePath, True, osWindows); BasicInstallation(ePath, True, True, osWindows);
end; end;
{ Custom mod } { Custom mod }
@ -384,7 +391,7 @@ begin
StartTime := Now; StartTime := Now;
Screen.Cursor := crHourGlass; Screen.Cursor := crHourGlass;
AddStatus('Starting Metamod:Source installation...', clBlack); AddStatus('Starting Metamod:Source installation...', clBlack);
BasicInstallation(ePath, False, eOS); BasicInstallation(ePath, False, False, eOS);
end; end;
{ FTP } { FTP }
@ -407,10 +414,7 @@ label CreateAgain;
label UploadAgain; label UploadAgain;
var eStr: TStringList; var eStr: TStringList;
i: integer; i: integer;
ePath: String;
CurNode: TTreeNode;
CopyConfig, eFound: Boolean; CopyConfig, eFound: Boolean;
eGoBack: Boolean;
begin begin
frmMain.cmdCancel.Show; frmMain.cmdCancel.Show;
frmMain.cmdNext.Hide; frmMain.cmdNext.Hide;

View File

@ -8071,6 +8071,7 @@ object frmMain: TfrmMain
Width = 509 Width = 509
Height = 24 Height = 24
AdvColorBorder = 0 AdvColorBorder = 0
MaxValue = 8
Progress = 0 Progress = 0
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -8625,53 +8626,117 @@ object frmMain: TfrmMain
Top = 8 Top = 8
Bitmap = { Bitmap = {
494C010102000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 494C010102000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000001000000001001000000000000008 0000000000003600000028000000400000001000000001002000000000000010
0000000000000000000000000000000000000000205E205E205E205E205E205E 00000000000000000000000000000000000000000000008CBD00008CBD00008C
205E205E205E205E205E205E205E000000000000205E205E205E205E205E205E BD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008C
205E205E205E205E205E205E0000000000000000000000000000000000000000 BD00008CBD00008CBD00000000000000000000000000008CBD00008CBD00008C
BD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008C
BD00008CBD000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD0063CEF700008CBD00A5F7
FF0063CEF70063CEF70063CEF70063CEF70063CEF70063CEF70063CEF70063CE
F70039ADDE00ADF7FF00008CBD0000000000008CBD0021A5CE005ACEEF0084E7
FF0063CEF70063CEF70063CEF70063CEF70063CEF70063CEF70063CEF70063CE
F70039ADDE001094C60000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD006BD6F700008CBD00ADF7
FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6
FF0039ADDE00BDEFF700008CBD0000000000008CBD004ABDE70031ADD60094EF
FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6FF006BD6
FF0039B5DE00CEF7FF00008CBD00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD0073D6FF00008CBD00ADF7
FF007BDEFF007BDEFF007BDEFF007BDEFF007BDEFF007BDEFF007BDEFF007BDE
FF0042B5DE00BDEFF700008CBD0000000000008CBD0073D6FF00008CBD00ADFF
FF007BDEFF007BDEFF007BDEFF007BDEFF007BDEFF007BDEFF007BDEFF007BDE
FF0042B5DE00CEF7FF00008CBD00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD007BDEFF00008CBD00B5F7
FF0084E7FF0084E7FF0084E7FF0084E7FF0084E7FF0084E7FF0084E7FF0084E7
FF0042B5DE00C6F7F700008CBD0000000000008CBD007BDEFF001094C60094EF
FF0094EFFF0084E7FF0084E7FF0084E7FF0084E7FF0084E7FF0084E7FF0084E7
FF004ABDE700CEF7FF001094C600000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD0084E7FF00008CBD00BDF7
FF008CEFFF008CEFFF008CEFFF008CEFFF008CEFFF008CEFFF008CEFFF008CEF
FF004ABDE700BDF7FF00008CBD0000000000008CBD0084E7FF0042B5DE005AC6
EF00ADFFFF008CEFFF008CEFFF008CEFFF008CEFFF008CEFFF008CEFFF008CEF
FF004ABDE700CEF7FF00CEF7FF00008CBD000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD008CEFFF00008CBD00D6F7
FF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7
FF00BDDEDE00D6F7FF00008CBD0000000000008CBD008CE7FF007BDEFF0021A5
CE00E7FFFF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7FF00CEF7
FF0094EFFF00E7FFFF00CEF7FF00008CBD000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD0094F7FF00008CBD00008C
BD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008C
BD00008CBD00008CBD00008CBD0000000000008CBD0094F7FF0094F7FF001094
C600008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008CBD00008C
BD00008CBD00008CBD00008CBD00008CBD000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD009CF7FF009CF7FF009CF7
FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7
FF00008CBD00000000000000000000000000008CBD009CF7FF009CF7FF009CF7
FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7FF009CF7
FF00088CBD000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000008CBD00D6F7FF00A5F7FF00A5F7
FF00A5F7FF00A5F7FF00A5F7FF00A5F7FF00A5F7FF00A5F7FF00A5F7FF00A5F7
FF00008CBD00000000000000000000000000008CBD00E7FFFF00A5FFFF00A5FF
FF00A5FFFF00A5FFFF00A5FFFF00A5FFFF00A5FFFF00A5FFFF00A5FFFF00A5FF
FF00088CBD000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000008CBD00D6F7FF00A5F7
FF00A5F7FF00A5F7FF00008CBD00008CBD00008CBD00008CBD00008CBD00008C
BD000000000000000000000000000000000000000000008CBD00E7FFFF00A5FF
FF00A5FFFF00A5FFFF00008CBD00008CBD00008CBD00008CBD00008CBD00008C
BD00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000008CBD00008C
BD00008CBD00008CBD0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000008CBD00008C
BD00008CBD00008CBD0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205E2C7B205ED47F2C7B2C7B2C7B
2C7B2C7B2C7B2C7B2C7BA76ED57F205E0000205E84662B77907F2C7B2C7B2C7B
2C7B2C7B2C7B2C7B2C7BA76E4262000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205E4D7B205ED57F4D7F4D7F4D7F
4D7F4D7F4D7F4D7F4D7FA76EB77B205E0000205EE972A66AB27F4D7F4D7F4D7F
4D7F4D7F4D7F4D7F4D7FC76ED97F205E00000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205E4E7F205ED57F6F7F6F7F6F7F
6F7F6F7F6F7F6F7F6F7FC86EB77B205E0000205E4E7F205EF57F6F7F6F7F6F7F
6F7F6F7F6F7F6F7F6F7FC86ED97F205E00000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205E6F7F205ED67F907F907F907F
907F907F907F907F907FC86ED87B205E0000205E6F7F4262B27FB27F907F907F
907F907F907F907F907FE972D97F426200000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205E907F205ED77FB17FB17FB17F
B17FB17FB17FB17FB17FE972D77F205E0000205E907FC86E0B77F57FB17FB17F
B17FB17FB17FB17FB17FE972D97FD97F205E0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205EB17F205EDA7FD97FD97FD97F
D97FD97FD97FD97FD97F776FDA7F205E0000205E917F6F7F8466FC7FD97FD97F
D97FD97FD97FD97FD97FB27FFC7FD97F205E0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205ED27F205E205E205E205E205E
205E205E205E205E205E205E205E205E0000205ED27FD27F4262205E205E205E
205E205E205E205E205E205E205E205E205E0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205ED37FD37FD37FD37FD37FD37F
D37FD37FD37FD37FD37F205E000000000000205ED37FD37FD37FD37FD37FD37F
D37FD37FD37FD37FD37F215E0000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000205EDA7FD47FD47FD47FD47FD47F
D47FD47FD47FD47FD47F205E000000000000205EFC7FF47FF47FF47FF47FF47F
F47FF47FF47FF47FF47F215E0000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000205EDA7FD47FD47FD47F205E
205E205E205E205E205E00000000000000000000205EFC7FF47FF47FF47F205E
205E205E205E205E205E00000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000205E205E205E205E0000
00000000000000000000000000000000000000000000205E205E205E205E0000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000

View File

@ -130,7 +130,7 @@ type
var var
frmMain: TfrmMain; frmMain: TfrmMain;
const VERSION = '1.1'; const VERSION = '1.2';
implementation implementation

View File

@ -9,5 +9,7 @@ del .\*.map
del .\*.drc del .\*.drc
del .\*.~xfm del .\*.~xfm
del .\*.log del .\*.log
del .\*.dof
upx MMS_Installer.exe upx MMS_Installer.exe
upx Attach.exe upx Attach.exe
upx hl2launch.exe