![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
F1- help ошбика при использовании потока TThread [D6, Win95/98, WinME, Win2k, WinXP]
Граф © (2002-10-04 06:04:00)При обычном копировании файлов, все проходит нормально, но стоит сделать это в потоке, возникает ошибка открытия файла Inaccessible value.
Делаю так вначале
procedure TForm1.Button1Click(Sender: TObject);
var InFS,OutFS: TFileStream;
begin
FromPathAndFileName:=OpenDialog1.FileName;
ToPathAndFileName:="c:\"+ExtractFileName(OpenDialog1.FileName);
Label1.Caption:="copy file from "+FromPathAndFileName+" to "+ToPathAndFileName;
InFS := TFileStream.Create( FromPathAndFileName, fmOpenRead );
OutFS := TFileStream.Create( ToPathAndFileName, fmCreate );
InFS.Seek( 0, soFromBeginning );
OutFS.CopyFrom( InFS, 0 );
InFS.Free;
OutFS.Free;
end;
Все работает, Земля крутиться, Солнце встает.
Теперь делаю это в потоке.
type
TLANcopyfile = class(TThread)
private
FromPathAndFileName, ToPathAndFileName: string;
{ Private declarations }
protected
procedure Execute; override;
end;
procedure TLANcopyfile.Execute;
var
InFS,OutFS: TFileStream;
begin
InFS := TFileStream.Create( FromPathAndFileName, fmOpenRead ); // вот в этой строке и выдает ошибку
OutFS := TFileStream.Create( ToPathAndFileName, fmCreate );
InFS.Seek( 0, soFromBeginning );
OutFS.CopyFrom( InFS, 0 );
InFS.Free;
OutFS.Free;
end;
procedure TForm1.Button1Click(Sender: TObject);
var InFS,OutFS: TFileStream;
begin
FromPathAndFileName:=OpenDialog1.FileName;
ToPathAndFileName:="c:\"+ExtractFileName(OpenDialog1.FileName);
LANCopyFile1:=TLANCopyFile.Create(false);
end;
Не работает, выдает ошибку открытия файла Inaccessible value.
Люди добрые, помогите, кто-чем может, сроки уже горят.
MBo (2002-10-04 07:31:00) [1]>FromPathAndFileName и ToPathAndFileName - глобальные переменные.
сомневаюсь я, однако:
> TLANcopyfile = class(TThread)
> private
> FromPathAndFileName, ToPathAndFileName: string;
Граф (2002-10-04 07:29:00) [2]FromPathAndFileName и ToPathAndFileName - глобальные переменные.
MBo (2002-10-04 07:05:00) [3]я не уловил, где задается приватное поле потока FromPathAndFileName?