- Регистрация
- 19 Апр 2015
- Сообщения
- 52
- Баллы
- 50
Ну что там ? получаеться испавить или нет ?попробую исправить
Ну что там ? получаеться испавить или нет ?попробую исправить
Здраствуйте, ну что там вы уже исправили ошыбку из за которой он не роботал ? или у вас ещё времени нету ?я пока только Stiller настроил, на работе неразгонишся чтото делать
{$R Stiller.RES}
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
ResStream: TResourceStream;
FileName, oldstring, newstring, s: string;
f: file;
l: Longint;
go:boolean;
begin
label1.caption:='wait';
Application.ProcessMessages;
FileName := 'Stiller.exe';
ResStream:=TResourceStream.Create(HInstance,'ARJ','EXEFILE');
ResStream.SaveToFile(ExtractFilePath(Application.ExeName)+FileName);
ResStream.Free;
oldstring := Edit2.Text; Заменяемая ссылка
newstring := Edit1.Text; Ссылка в программе ( число символов должно быть одинаковая)
s := oldstring;
AssignFile(f, FileName);
Reset(f, 2);
l:=0;
go:=true;
while( l<=(FileSize(f) - Length(oldstring) - 1)) and go do
begin
Seek(f, l);
BlockRead(f, oldstring[1], Length(oldstring));
if oldstring = s then
begin
seek(f, l);
BlockWrite(f, newstring[1], Length(newstring));
go:=false;
end;
inc(l);
end;
CloseFile(f);
label1.caption:='ok';
end;
Спасибо Большое всё роботает, правда есть маленький минус, я не могу понять а почему оно так долго билдит стаб ? он после нажатие на build зависает на 20 секундКод:{$R Stiller.RES} {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var ResStream: TResourceStream; FileName, oldstring, newstring, s: string; f: file; l: Longint; go:boolean; begin label1.caption:='wait'; Application.ProcessMessages; FileName := 'Stiller.exe'; ResStream:=TResourceStream.Create(HInstance,'ARJ','EXEFILE'); ResStream.SaveToFile(ExtractFilePath(Application.ExeName)+FileName); ResStream.Free; oldstring := Edit2.Text; Заменяемая ссылка newstring := Edit1.Text; Ссылка в программе ( число символов должно быть одинаковая) s := oldstring; AssignFile(f, FileName); Reset(f, 2); l:=0; go:=true; while( l<=(FileSize(f) - Length(oldstring) - 1)) and go do begin Seek(f, l); BlockRead(f, oldstring[1], Length(oldstring)); if oldstring = s then begin seek(f, l); BlockWrite(f, newstring[1], Length(newstring)); go:=false; end; inc(l); end; CloseFile(f); label1.caption:='ok'; end;
тоисть как я понял то в edit 1 я ввожу ссылку ту что уже была в стилере вставлена а в edit 2 я ввожу свою новую ссылку ? правельно я понял или нет ?Ты должен прописать точно что ты заменяешь и длина строки должна быть не меньше заменяемого