0

我想知道一些关于在 C 中创建目录的知识。

我知道在基于 unix 的系统中,您可以使用此功能创建一个目录:

mkdir (const char* directory_name,mode_t mode);

但是,在 windows 中,mkdir 函数只接受一个参数,即目录的名称。您不能为访问权限指定模式位。

在 windows 中创建目录的函数是:

_mkdir (const char* directory_name);

因此,创建目录的可移植方式如下:

#ifdef WIN32
      _mkdir (directory_name);
#else
       mkdir (directory_name,mode);
#endif

我的问题是,有没有办法在 unix 中指定权限,如 mkdir,但在 windows 中?

4

3 回答 3

1

您可以使用CreateDirectory并提供适当SECURITY_ATTRIBUTES的(链接的示例使用安全描述符和注册表项的属性,但基本上这与文件没有什么不同)。

于 2013-01-02T15:22:07.890 回答
0

CreateDirectory您可以使用, 从 API Windows设置权限。

于 2013-01-02T15:21:29.367 回答
0

在 Windows 上也有类似的chmod(): http _chmod(): //msdn.microsoft.com/en-us/library/1z319a54%28v=vs.100%29.aspx

于 2013-01-02T15:23:27.743 回答