CreateDirectoryEx函数创建一个具有指定路径的新目录,该目录保留指定模板目录的属性。如果底层文件系统支持对文件和目录的安全性,则该函数将指定的安全描述符应用于新目录。新目录保留指定模板目录的其他属性。请注意,CreateDirectoryEx有一个模板参数,而CreateDirectory没有。
BOOL CreateDirectoryEx(
LPCTSTR 【lpTemplateDirectory】, | //指向模板目录的路径字符串 |
LPCTSTR 【lpNewDirectory】, | //指向要创建的目录的路径字符串的指针 |
LPSECURITY_ATTRIBUTES 【lpSecurityAttributes】 | //指向安全描述符的指针 |
); |
参数
【lpTemplateDirectory】
指向一个以null结尾的字符串,指定创建新目录时用作模板的目录的路径。
【lpNewDirectory】
指向一个以null结尾的字符串,指定要创建的目录的路径。
【lpSecurityAttributes】
指向SECURITY_ATTRIBUTES结构的指针,用于确定返回的句柄是否可由子进程继承。如果【lpSecurityAttributes】为NULL,则无法继承该句柄。
Windows NT:结构的lpSecurityDescriptor成员指定新目录的安全描述符。如果【lpSecurityAttributes】为NULL,则该目录将获得默认安全描述符。目标文件系统必须支持该参数的文件和目录的安全性才能生效。
Windows 95:结构的lpSecurityDescriptor成员将被忽略。
返回值
如果函数成功,返回值不为零。
如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.
备注
CreateDirectoryEx功能允许您创建从其他目录继承流信息的目录。此函数在处理具有正确识别目录内容所需的资源流作为属性的Macintosh目录时非常有用。
Windows NT:
某些文件系统(如NTFS)支持单个文件和目录的压缩。在为这样的文件系统格式化的卷上,新的目录继承其父目录的压缩属性。
您可以通过调用设置了FILE_FLAG_BACKUP_SEMANTICS标志的CreateFile函数来获取目录的句柄。有关代码示例,请参阅CreateFile.
也可以看看
CreateDirectory, CreateFile, RemoveDirectory, SECURITY_ATTRIBUTES