我们写的系统要新建账,可能中间失败,所以要再删除此目录
用DELPHI写的程序:
2000下新建立目录 然后导资料进去,突然失败
再来删除此目录 可为何删除不了???1)正在操作吧>>NO
2)可能需要首先删除里面的文件,然后才能删除夹子>>里面的文件全部删除了;就是目录 没有删除
3)你直接用Api函数删除看看行不行>>就是用API函数
4)什么提示?>>没有任何提示
用DELPHI写的程序:
2000下新建立目录 然后导资料进去,突然失败
再来删除此目录 可为何删除不了???1)正在操作吧>>NO
2)可能需要首先删除里面的文件,然后才能删除夹子>>里面的文件全部删除了;就是目录 没有删除
3)你直接用Api函数删除看看行不行>>就是用API函数
4)什么提示?>>没有任何提示
我是这样子的:
//删除目录
procedure TForm1.DelDir(path:string);
var
lpFileOp: TSHFileOpStruct;
begin
with lpFileOp do
begin
Wnd :=0;
wFunc := FO_DELETE;
pFrom := pchar(path+#0);//此为要删除的文件或目录,支持*、?
pTo := nil;
fFlags :=FOF_NOCONFIRMATION;//不显示进度对话框
hNameMappings := nil;
lpszProgressTitle := nil;
fAnyOperationsAborted := True;
end;
end;
var
fo: TSHFILEOPSTRUCT;
begin
FillChar(fo, SizeOf(fo), 0);
with fo do
begin
Wnd := 0;
wFunc := FO_DELETE;
pFrom := PChar(source+#0);
pTo := #0#0;
fFlags := FOF_NOCONFIRMATION+FOF_SILENT;
end;
Result := (SHFileOperation(fo) = 0);
end;
那么再用RmDir(s)删除目录,试试
就是2000,nt,xp下不行
我一開始也是這樣想
当前目录ChDir這個方法我也試過,還是不行
因為是建帳程序,所以我在刪除目錄前也把所的數據庫的連接斷開了,程序還是不行