EInOutError32 Naruszenie zasad współdzelenia

0

Przy otwarciu mojego programu chcę aby kopiował sam siebie np. na dysk C:
Używam poniższego kodu ale wyskakuje mi błąd EInOutError 32 czyli naruszenie zasad współdzenelia... Czy ktos może zaproponowac jakieś rozwiązanie ???
var
plik1,plik2:File;
rekord:Integer;
Buf:array[1..4096] of byte;
begin
AssignFile(plik1,'Project2.exe'); //orginał
AssignFile(plik2,'C:\Project2.exe'); //kopia
Reset(plik1,1); // w tym momencie wyskakuje Error
Rewrite(plik2, 1);
while not Eof(plik1) do
begin
BlockRead(plik1,buf,sizeof(buf),rekord);
BlockWrite(plik2,buf,sizeof(buf),rekord);
end;
Closefile(plik1);
CloseFile(plik2);
end;

0

spróbuj ustawić FileMode na fmOpenRead
http://www.delphibasics.co.uk/RTL.asp?Name=Reset

1 użytkowników online, w tym zalogowanych: 0, gości: 1