下面是一段代码
var
  TempFile: array[0..MAX_PATH] of Char;
begin
  if GetTempFileName(PChar(Dir), DA, 0, TempFile) <> 0 then
    Result := Windows.DeleteFile(TempFile)
  else
    Result := False;
end;用于判断目录是否可写,主要是用了GetTempFileName和DeleteFile这两个 api。GetFileAttributes这个函数对目录是否可写没什么用。qt里面有一个QDir::isWritable函数,用来判断目录是否可写,不知道具体如何实现的,有时间的话看看。