2005-10-07 15:42:18 +00:00
|
|
|
program Attach;
|
|
|
|
|
|
|
|
{$APPTYPE CONSOLE}
|
|
|
|
|
|
|
|
uses
|
|
|
|
SysUtils, Classes, UnitPackSystem;
|
|
|
|
|
|
|
|
var eStream: TMemoryStream;
|
|
|
|
eFiles: TStringList;
|
2006-11-30 22:53:20 +00:00
|
|
|
Version: String;
|
2005-10-07 15:42:18 +00:00
|
|
|
begin
|
|
|
|
WriteLn('// File attacher for the MM:S installer');
|
|
|
|
WriteLn('// by Basic-Master');
|
|
|
|
WriteLn('');
|
|
|
|
WriteLn('// Looking up files...');
|
|
|
|
{ Check files }
|
2005-12-28 00:09:55 +00:00
|
|
|
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;
|
2005-10-07 15:42:18 +00:00
|
|
|
if FileExists(ExtractFilePath(ParamStr(0)) + 'files\server.dll') then
|
|
|
|
WriteLn('// Found files\server.dll')
|
|
|
|
else begin
|
|
|
|
WriteLn('// Error: Couldn''t find files\server.dll!');
|
|
|
|
ReadLn;
|
|
|
|
exit;
|
|
|
|
end;
|
|
|
|
if FileExists(ExtractFilePath(ParamStr(0)) + 'files\server_i486.so') then
|
|
|
|
WriteLn('// Found files\server_i486.so')
|
|
|
|
else begin
|
|
|
|
WriteLn('// Error: Couldn''t find files\server_i486.so!');
|
|
|
|
ReadLn;
|
|
|
|
exit;
|
|
|
|
end;
|
|
|
|
if FileExists(ExtractFilePath(ParamStr(0)) + 'MMS_Installer.exe') then
|
|
|
|
WriteLn('// Found MMS_Installer.exe')
|
|
|
|
else begin
|
|
|
|
WriteLn('// Error: Couldn''t find MMS_Installer.exe!');
|
|
|
|
ReadLn;
|
|
|
|
exit;
|
|
|
|
end;
|
2006-11-30 22:53:20 +00:00
|
|
|
{ Get version number }
|
|
|
|
WriteLn('// Please enter the version number:');
|
|
|
|
ReadLn(Version);
|
|
|
|
if (Trim(Version) = '') then begin
|
|
|
|
WriteLn('// Error: Invalid version number!');
|
|
|
|
ReadLn;
|
|
|
|
exit;
|
|
|
|
end;
|
2005-10-07 15:42:18 +00:00
|
|
|
{ Compress files }
|
|
|
|
WriteLn('// Compressing files...');
|
|
|
|
eFiles := TStringList.Create;
|
2005-12-28 00:09:55 +00:00
|
|
|
eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\hl2launch.exe');
|
2005-10-07 15:42:18 +00:00
|
|
|
eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\server.dll');
|
|
|
|
eFiles.Add(ExtractFilePath(ParamStr(0)) + 'files\server_i486.so');
|
|
|
|
eStream := TMemoryStream.Create;
|
|
|
|
CompressFiles(eFiles, ExtractFilePath(ParamStr(0)) + 'temp.zip');
|
|
|
|
eStream.LoadFromFile(ExtractFilePath(ParamStr(0)) + 'temp.zip');
|
|
|
|
WriteLn('// Attaching output to MMS_Installer.exe...');
|
2006-11-30 22:53:20 +00:00
|
|
|
AttachToFile(ExtractFilePath(ParamStr(0)) + 'MMS_Installer.exe', eStream, Version);
|
2005-10-07 15:42:18 +00:00
|
|
|
DeleteFile(ExtractFilePath(ParamStr(0)) + 'temp.zip');
|
|
|
|
eStream.Free;
|
|
|
|
WriteLn('// Done.');
|
|
|
|
ReadLn;
|
|
|
|
end.
|