创建文件/目录
1 ShellApi
CreateDirectory(PChar(ExtractFilePath(ParamStr(0))+’Test’),nil);
2. 删除
在程序运行过程中,单击“删除”按钮就可以将新创建的test子目录删除,响应代码如下:
procedure TForm1.btnDeleteClick(Sender: TObject);
var
T:TSHFileOpStruct;
P:String;
begin
P:=ExtractFilePath(ParamStr(0))+’Test’;
with T do
begin
Wnd:=0;
wFunc:=FO_DELETE;
pFrom:=PChar(P);
pTo:=nil;
fFlags:=FOF_ALLOWUNDO+FOF_NOERRORUI;
hNameMappings:=nil;
lpszProgressTitle:=’正在删除文件夹’;
fAnyOperationsAborted:=False;
end;
SHFileOperation(T);
end;
程序通过填充TSHFileOpStruct 类型的对象T的属性来设置本次删除操作可以Undo,当然最终的删除操作是通过SHFileOperation(T)来完成的。如果SHFileOperation函数返回值为0,就表示删除成功,否则表示删除失败。
如果用户在程序中想要直接删除test子目录,可以直接通过调用RemoveDirectory (Pchar(ExtractFilePath(ParamStr(0))+’Test’))语句来实现。
3 .createfile(pchar(fPath),GENERIC_WRITE,0,nil,CREATE_NEW,FILE_ATTRIBUTE_NORMAL,0);
创建文件,fPath为文件路径。
欢迎关注我,一起进步!扫描下方二维码即可加我