python使用C结构体
def SDF_GetDeviceInfo(self) -> dict: # 获取设备信息 class DEVICEINFO(Structure): _fields_ = [('IssuerName', c_char*40), ('DeviceName', c_char*16), ('DeviceSerial', c_char*16), ('DeviceVersion', c_int32), ('StandardVersion', c_int32), ('AsymAlgAbility', c_int32*2), ('SymAlgAbility', c_int32), ('HashAlgAbility', c_int32), ('BufferSize', c_int32)] try: deviceInfoPointer = pointer(DEVICEINFO()) code = self.SO.SDF_GetDeviceInfo(self.hSessionHandle, deviceInfoPointer) deviceInfo1 = deviceInfoPointer.contents reVal = dict() reVal['code'] = code reVal['IssuerName'] = deviceInfo1.IssuerName.decode() reVal['DeviceName'] = deviceInfo1.DeviceName.decode() reVal['DeviceSerial'] = deviceInfo1.DeviceSerial.decode() reVal['DeviceVersion'] = str(deviceInfo1.DeviceVersion) reVal['StandardVersion'] = str(deviceInfo1.StandardVersion) reVal['AsymAlgAbility'] = str(deviceInfo1.AsymAlgAbility[0]) + "|" + str(deviceInfo1.AsymAlgAbility[1]) reVal['SymAlgAbility'] = str(deviceInfo1.SymAlgAbility) reVal['HashAlgAbility'] = str(deviceInfo1.HashAlgAbility) reVal['BufferSize'] = str(deviceInfo1.BufferSize) log.debug("retVal:" + str(reVal)) return reVal except BaseException as e: log.critical('关闭会话失败: ' + traceback.format_exc(e))
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】