文件改名的问题?!

jjaacc 2002-12-20 03:14:32
我写的如下:但有错,不知道哪错了?要如何改,谢谢!

procedure FileRename(AHandle:THandle;FromName,ToName:string);
var
SHFileOpStruct:TSHFileOpStruct;
begin
with SHFileOpStruct do
begin
Wnd:=AHandle;
wFunc:=FO_RENAME;
pFrom:=pchar(FromName);
pTo:=pchar(ToName);
fFlags:=FOF_NOCONFIRMATION;

fAnyOperationsAborted:=false;
hNameMappings:=nil;
lpszProgressTitle:=nil;

if SHFileOperation(SHFileOpStruct)<>0 then
RaiseLastWin32Error;
end;
end;
...全文
63 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxpbuaa 2002-12-29
  • 打赏
  • 举报
回复
程序没错,但是注意:
1、要uses ShellAPI
2、FromName,ToName要传送全名,如:
FileRename(handle,'g:\档.txt','g:\档11.txt');
或者
FileRename(0,'g:\档.txt','g:\档11.txt');

—————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
—————————————————————————————————
jjaacc 2002-12-20
  • 打赏
  • 举报
回复
不行。。。
artman 2002-12-20
  • 打赏
  • 举报
回复
procedure FileRename(AHandle:THandle;FromName,ToName:string);
var
SHFileOpStruct:TSHFileOpStruct;
begin
with SHFileOpStruct do
begin
Wnd:=AHandle;
wFunc:=FO_RENAME;
pFrom:=pchar(FromName);
pTo:=pchar(ToName);
fFlags:=FOF_NOCONFIRMATION;

fAnyOperationsAborted:=false;
hNameMappings:=nil;
lpszProgressTitle:=nil;
end;

if SHFileOperation(SHFileOpStruct)<>0 then
RaiseLastWin32Error;

end;

1,184

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧