Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

КАК ЧИТАТАТЬ EXEшник???? [D5, Win95/98]


Flashx ©   (2002-07-22 03:57:00) 

Спасите!!!
Надо из запущеного ехе читать свой код Делфя ругается на Reset(f,1) .... i/o 32

Помогите плз!!!!


Flashx   (2002-07-23 04:13:00) [1]

Спасиба.... век живи - век учись.... никогда бы не подумал, что Reset подразумевает под собой запись....

Спасиба за ответы... буду разбираться..... если у кго есть еще какие-нить идеи с благодарностью выслушаю....


Pumpkin   (2002-07-22 21:11:00) [2]

2FlashX
Reset есть OpenReadWrite. ЕХЕшники открываются призапуске как DenyWrite.
Если только читать то примерно так:

procedure TForm1.Button1Click(Sender: TObject);
var
Buf^ : Pointer;
H : THandle;
S1: String;
begin
S1 := ParamStr(0);
H := FileOpen( S1, fmOpenWrite or fmShareDenyNone );
if H = $FFFFFFFF then begin
MessageBox(Handle, "ERROR","ERROR",0);
Exit;
end;
GetMem(Buf, 32);
FileSeek(H, 128, 0);
FileRead(H, Buf, 32);
FileClose(H);
end;

Все функции всего лишь обертки для АПИшных.
Удачи.


LordOfSilence   (2002-07-22 10:24:00) [3]

Сейчас точно не скажу что и как,
но точно помню что эта проблема где-то описывалась
и предагалось следующее ее решение:
Необходимо сделать свое приложение многопоточным
и пытаться работать со своим кодом из другого,
неосновного потока. Не гарантирую, но подумайте.


Lord Warlock   (2002-07-22 09:19:00) [4]

Можно использовать CreateFile из WinAPI


RV   (2002-07-22 09:14:00) [5]

ага. на запись
вот так работает, но при методе memory.free у меня бывают ошибки

Memory := TMemoryStream.Create;
try
Memory.LoadFromFile(S);
Memory.Read(s,100);


Anatoly Podgoretsky   (2002-07-22 07:55:00) [6]

Потому что ты пытаешься открыть его на запись


МИФИст   (2002-07-22 07:27:00) [7]

А ты ключи используешь {I+} и {I-}?


Flashx   (2002-07-22 04:04:00) [8]

Извеняюсь за флуд.... просто показалось, что сообщение не прошло :(


Наверх

Титульная страница Поиск, карта сайта Написать письмо