mirror of
https://github.com/alliedmodders/metamod-source.git
synced 2024-12-01 13:24:25 +01:00
54f678eb61
--HG-- extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40170
60 lines
1.8 KiB
ObjectPascal
60 lines
1.8 KiB
ObjectPascal
program Attach;
|
|
|
|
{$APPTYPE CONSOLE}
|
|
|
|
uses
|
|
SysUtils, Classes, UnitPackSystem;
|
|
|
|
var eStream: TMemoryStream;
|
|
eFiles: TStringList;
|
|
begin
|
|
WriteLn('// File attacher for the MM:S installer');
|
|
WriteLn('// by Basic-Master');
|
|
WriteLn('');
|
|
WriteLn('// Looking up 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
|
|
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;
|
|
{ Compress files }
|
|
WriteLn('// Compressing files...');
|
|
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_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...');
|
|
AttachToFile(ExtractFilePath(ParamStr(0)) + 'MMS_Installer.exe', eStream);
|
|
DeleteFile(ExtractFilePath(ParamStr(0)) + 'temp.zip');
|
|
eStream.Free;
|
|
WriteLn('// Done.');
|
|
ReadLn;
|
|
end.
|