创建一个目录。

参数
[in] hcontexthandle
一个已经成功打开的设备的句柄。
[in] pdirinfo
要创建的目录的相关信息。
[in] ulflag
参数,其定义如下
esf_create_root_dir:创建根目录,可以与esf_reload或esf_unblock组合使用。
esf_create_dir:创建一般目录。
esf_reload:指定so_pin的功能,使so能重载user_pin,仅对根目录有效。重载即重新设置user_pin的密码与重试次数。
esf_unblock:指定so_pin的功能,使so能解锁user_pin,仅对根目录有效。解锁即初始化user_pin的重试次数。
要求
esfp_opendev
返回值
esf_success:成功
esf_rv_data_error:数据域错误,正在创建的文件或目录可能已经建立
esf_rv_file_type_error:文件类型与命令不相符合
其它:见“api返回码说明”。
示例代码
esf_handle hcontexthandle = null;
esf_rv irv;
esf_dirinfo dirinfo;
//创建根目录
dirinfo.m_uchcreateac = esf_access_so_user;
dirinfo.m_uchdeleteac = esf_access_so;
irv = esfp_createdir(hcontexthandle, &dirinfo, esf_create_root_dir | esf_reload);
if(irv != esf_rv_success)
return irv;
1、dir的参数使用如下:
dirinfo. m_uldirid:要创建的目录的id,低两个字节有效,对于创建根目录,此项不用填,固定为0x3f00。
dirinfo. m_puchdirname:要创建的目录的名字,长度为1-16个字节。
dirinfo. m_uldirnamelen:要创建的目录名的长度。
dirinfo. m_uchcreateac:在此目录下创建文件或目录的权限。
dirinfo. m_uchdeleteac:删除此目录的权限。
2、保留了id为0x3fff,0xffff,0x0000的目录id。
3、目录访问权限的类型定义:
esf_access_anyone 任何人都可以。
esf_access_so_user 管理员(so)和用户(user)都可以。
esf_access_so 只有管理员可以访问。
esf_access_never 永远不可以。
参见
esfp_deletedir, esfp_changedir, esfp_getcurrentdir