
28.01.2008, 03:20
|
|
Познающий
Регистрация: 31.08.2007
Сообщений: 94
Провел на форуме: 422909
Репутация:
200
|
|
Как программным путем запустить [exe programm] (смотри схему ниже) из файла temp.temp ??? чтобы она выполнялась
Напрямую запустить код, это надо его грузить в память и тд и тп, я приведу более простой вариант, и поясню выше указанный пост подробнее:
1)Открываешь этот файл с помощью:
_file:= Createfile(pchar([Путь до него]), GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
2)Указываешь позицию с которой произойдет считывание, так:
SetFilePointer(_file,[кол-во быйт], nil, FILE_BEGIN);
3)Читаешь нужное кол-во:
ReadFile(_file, [<буффер>], sizeOf([<буффер>]), _temp, nil);
4)Создаешь левый файл: _filenew=CreateFile(pchar([Путь])),GENERIC_WRITE,FILE_SHARE_WRITE,nil,CREATE_NEW, 0, 0);
5) Записываешь в него содержимое из буффера:
WriteFile(_filenew, [<буффер>], sizeOf([<буффер>]), _temp, nil); //temp здесь сути не играет
6) Не забываем закрыть за собой дверь:
CloseHandle(_filenew);
CloseHandle(_file);
Ах, да ну и ShellExecute' ишь левый файл 
Последний раз редактировалось A2GIL; 28.01.2008 в 03:31..
|
|
|