しばらく留守にしていました。困った時のここだのみで申し訳ありません。
ファイルのコピープログラムなのですが…
with foStruct do begin
wnd := Handle;
wFunc := FO_COPY;
pFrom := PChar(Sched[i].Src + '*.*' + #0);
pTo := PChar(Sched[i].Dst + '' + #0);
if Sched[i].isSilent then
fFlags := FOF_SILENT or fof_NOCONFIRMATION or FOF_NOCONFIRMMKDIR
else fFlags := fof_NOCONFIRMATION or FOF_NOCONFIRMMKDIR;
fAnyOperationsAborted := False;
hNameMappings := nil;
lpszProgressTitle := nil;
end;
Res := SHFileOperation(foStruct);
こんなルーチンをタイマーイベントで呼び出しています。同じ時間内に複数
のルーチンが動作することがあります。その時に、FOF_SILENTを指定しなけれ
ば併行して二つのコピーが走るのですが、FOF_SILENTを指定すると一つしか走っ
てくれません。これって仕様なのでしょうか?
|