欧阳小辰 2025-12-26 16:21 采纳率: 0%
浏览 3

华视cvr100-uc使用32位dll和32位jdk还是获取不到身份证照片

华视cvr100-uc使用32位dll和32位jdk还是获取不到身份证照片

  • 写回答

1条回答 默认 最新

  • 关注

    核心就4个排查点,按优先级来:

    1. 先跑官方32位测试工具
      这是最快的判断方法。如果工具能读到照片,说明设备、驱动、DLL都没问题,锅在你的Java代码;如果工具也读不到,直接找硬件或驱动的问题(换USB口、重装官方32位驱动)。
    2. 代码流程必须对
      别跳过Authenticate()读卡步骤!必须先读卡成功,再调GetBmpData()拿照片。很多人栽在这,直接拿照片肯定长度为0。
    3. 32位环境要彻底对齐
      不光JDK是32位,IDE运行时也要选32位JRE(别让64位IDE默认用64位JRE跑);DLL要放对路径,要么丢项目bin目录,要么丢SysWOW64(64位系统),加载前最好用绝对路径指定。
    4. 权限和细节别漏
      用管理员身份运行你的程序,Windows权限不够会读不到设备;另外,测试几张不同的身份证,排除个别老身份证芯片里没存照片的情况。

    如果代码里报UnsatisfiedLinkError,就是DLL加载失败;如果读卡返回非1,就是设备连接或读卡失败;如果照片长度为0,就是没先读卡或者卡本身没照片。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月26日