国密SKF接口函数介绍之三:应用管理函数

来源:互联网 发布:通过淘宝账号人肉 编辑:程序博客网 时间:2024/04/29 23:04
概述
        应用管理主要完成应用的创建、枚举、删除、打开、关闭等操作。应用管理系列函数如下表所示:
表  应用管理系列函数

函数名称功能SKF_CreateApplication创建应用SKF_EnumApplication枚举应用SKF_DeleteApplication删除应用SKF_OpenApplication打开应用SKF_CloseApplication关闭应用

1、创建应用
函数原型:ULONG DEVAPI SKF_CreateApplication(DEVHANDLE hDev, LPSTR szAppName, LPSTR szAdminPin, DWORD dwAdminPinRetryCount,LPSTR szUserPin, DWORD dwUserPinRetryCount,DWORD dwCreateFileRights, HAPPLICATION *phApplication)
功能描述:创建一个应用。 
参        数:hDev:[IN] 连接设备时返回的设备句柄。
                    szAppName:[IN] 应用名称。
                    szAdminPin:[IN] 管理员PIN。
                    dwAdminPinRetryCount:[IN] 管理员PIN最大重试次数。
                    szUserPin:[IN] 用户PIN。
                    dwUserPinRetryCount:[IN] 用户PIN最大重试次数。
                    dwCreateFileRights:[IN] 在该应用下创建文件和容器的权限,参见6.4.9权限类型。为各种权限的或值。
                    phApplication:[OUT] 应用的句柄。
返  回  值:SAR_OK:成功;其他:错误码。
备        注:权限要求:需要设备权限。
2、枚举应用
函数原型:ULONG DEVAPI SKF_EnumApplication(DEVHANDLE hDev, LPSTR szAppName,ULONG *pulSize)
功能描述:枚举设备中存在的所有应用。
参        数::hDev:[IN] 连接设备时返回的设备句柄。
                     szAppName: [OUT] 返回应用名称列表, 如果该参数为空,将由pulSize返回所需要的内存空间大小。每个应用的名称以单个‘\0’结束,以双‘\0’表示列表的结束。
                     pulSize:[IN,OUT] 输入时表示应用名称的缓冲区长度,输出时返回szAppName所占用的空间大小。
返  回  值:SAR_OK:成功;其他:错误码。
3、删除应用
函数原型:ULONG DEVAPI SKF_DeleteApplication(DEVHANDLE hDev, LPSTR szAppName)
功能描述:删除指定的应用。
参        数:hDev:[IN] 连接设备时返回的设备句柄。
                    szAppName:[IN] 应用名称。
返  回  值:SAR_OK:成功;其他:错误码。
备        注:权限要求:需要设备权限。
4、打开应用
函数原型:ULONG DEVAPI SKF_OpenApplication(DEVHANDLE hDev, LPSTR szAppName, HAPPLICATION *phApplication)
功能描述:打开指定的应用。
参        数:hDev:[IN] 连接设备时返回的设备句柄。
                    szAppName:[IN] 应用名称。
                    phApplication:[OUT] 应用的句柄。
返  回  值:SAR_OK:成功;其他:错误码。
5、关闭应用
函数原型:ULONG DEVAPI SKF_CloseApplication(HAPPLICATION hApplication)
功能描述:关闭应用并释放应用句柄。
参        数:hApplication:[IN]应用句柄。
返  回  值:SAR_OK:成功;其他:错误码。
备        注:此函数不影响应用安全状态。
0 0
原创粉丝点击