Показать сообщение отдельно

  #8  
Старый 28.01.2008, 03:20
A2GIL
Познающий
Регистрация: 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..
 
Ответить с цитированием