Mientras un archivo .exe se esta ejecutando no se puede modificar. Si por el contrario solo lo quieres leer, tienes que indicar que lo abra como solo lectura.
Código Delphi
[-]
var
F: File;
begin
AssignFile(F,ParamStr(0));
Filemode:= 0; {$I-}
Reset(F);
{$I+}
if IOResult = 0 then
begin
CloseFile(F);
end;
end;