ThCardReader打包和部署指南.md 8.0 KB

ThCardReader项目打包和部署指南

📋 目录

  1. 项目打包步骤
  2. 部署文件结构
  3. 系统要求
  4. 安装步骤
  5. 服务启动
  6. 常见问题

🔧 项目打包步骤

1. 开发环境准备

  • Visual Studio 2019/2022 或更高版本
  • .NET Framework 4.8 SDK
  • 管理员权限(用于编译和测试)

2. 编译配置

<!-- 确保项目配置为Release模式 -->
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
  <OutputPath>bin\x86\Release\</OutputPath>
  <DefineConstants>TRACE;DISABLE_NATIONEC;DISABLE_SSCARD</DefineConstants>
  <Optimize>true</Optimize>
  <PlatformTarget>x86</PlatformTarget>
</PropertyGroup>

3. 编译步骤

  1. 打开Visual Studio
  2. 加载解决方案ThCardReader.sln
  3. 选择配置:Release | x86
  4. 清理解决方案生成清理解决方案
  5. 重新生成解决方案生成重新生成解决方案

4. 打包命令(命令行方式)

# 切换到项目目录
cd ThCardReader

# 清理旧的编译文件
msbuild ThCardReader.csproj /t:Clean /p:Configuration=Release /p:Platform=x86

# 重新编译
msbuild ThCardReader.csproj /t:Build /p:Configuration=Release /p:Platform=x86

📁 部署文件结构

完整部署包结构

ThCardReader_Release/
├── ThCardReader.exe                 # 主程序
├── ThCardReader.exe.config          # 配置文件
├── Config.ini                       # 初始化配置
├── HSM.ini                          # 华视读卡器配置
├── HSMConfig.ini                    # 华视读卡器配置
├── readme.txt                       # 说明文件
├── 
├── 📁 核心DLL文件/
│   ├── Microsoft.Owin.dll           # OWIN框架
│   ├── Microsoft.Owin.Hosting.dll   # HTTP托管
│   ├── Microsoft.Owin.Host.HttpListener.dll
│   ├── System.Web.Http.dll          # Web API
│   ├── System.Net.Http.Formatting.dll
│   ├── System.Web.Http.Owin.dll
│   ├── Newtonsoft.Json.dll          # JSON处理
│   ├── Owin.dll                     # OWIN基础
│   └── System.Web.Cors.dll          # 跨域支持
│
├── 📁 华视读卡器DLL/
│   ├── Termb.dll                    # 华视核心库
│   ├── TSConfig.dll                 # 终端配置
│   ├── WltRS.dll                    # 华视读卡库
│   ├── TSW_KS.dll                   # 华视密钥库
│   ├── InputPwd.dll                 # 密码输入
│   ├── BmpToJpg.dll                 # 图像转换
│   ├── TypeA.dll                    # 卡片类型A
│   ├── UnPack.dll                   # 解包工具
│   ├── JpgDll.dll                   # JPEG处理
│   ├── libcurl.dll                  # HTTP通信
│   ├── termb.lic                    # 许可证文件
│   └── 用前必读.TXT                 # 使用说明
│
├── 📁 江苏医保DLL/
│   ├── HeaSecReadInfo.dll           # 江苏医保主DLL
│   ├── SSCardDriver.dll             # 社保卡驱动
│   ├── SSCardDriver_TS.dll          # 泰盛驱动
│   ├── SSCardDriver_HD.dll          # 海典驱动
│   ├── SSCardDriver_MT.dll          # 明泰驱动
│   ├── SSCardPKI.dll                # PKI加密
│   ├── GetInfo.dll                  # 信息获取
│   ├── Message.dll                  # 消息处理
│   ├── NeuSSCard.dll                # 东大软控
│   ├── ElecEvidenceClient.dll       # 电子凭证
│   ├── JSGetQRCode.dll              # 二维码生成
│   ├── GetSFZInfoDriver_JS.dll      # 身份证读取
│   ├── NeuCSB.dll                   # CSB接口
│   ├── LNGenComp.dll                # 通用组件
│   └── libeay32.dll                 # 加密算法
│
├── 📁 测试工具/
│   ├── Demo.exe                     # 华视测试工具
│   ├── HeaSecTesting.exe            # 江苏医保测试
│   ├── SSCardDriverTest.exe         # 社保卡测试
│   ├── Demo44428.exe                # 综合测试
│   ├── CAPKITestDemo.exe            # PKI测试
│   ├── NationECCodeTest.exe         # 电子凭证测试
│   ├── 社会保障卡跨省应用检查程序(自查版)V1.0.exe
│   └── 社会保障卡跨省应用检查程序(备案版)V1.0.exe
│
├── 📁 日志目录/
│   ├── NEULOGS/                     # 东软日志
│   └── TSLOG/                       # 终端日志
│
└── 📁 文档/
    ├── 配置文件说明.txt
    ├── SSCardDriver.h               # 开发头文件
    ├── SSCardDriver.lib             # 静态库
    └── SSCardPKI.lib                # PKI静态库

💻 系统要求

硬件要求

  • CPU:Intel/AMD x86架构处理器
  • 内存:2GB RAM 或更多
  • 硬盘:500MB 可用空间
  • USB:至少一个可用USB端口(华视读卡器)
  • 读卡器
    • 华视电子身份证读卡器(USB接口)
    • 江苏医保社保卡读卡器

软件要求

  • 操作系统:Windows 7/8/10/11 (32位或64位)
  • .NET Framework:4.8 或更高版本
  • 管理员权限:首次安装需要管理员权限
  • 网络:可选(江苏医保联网功能需要)

端口要求

  • HTTP端口:8321(系统默认,可配置)
  • 防火墙:需要允许8321端口访问

🚀 安装步骤

1. 准备工作

# 1. 下载并解压部署包
# 2. 确保具有管理员权限
# 3. 关闭杀毒软件(避免误报)

2. 安装.NET Framework 4.8

  • 如果系统未安装,从Microsoft官网下载安装

3. 部署文件

# 将所有文件复制到目标目录,例如:
C:\Program Files (x86)\ThCardReader\

4. 权限设置

  • 右键点击 ThCardReader.exe
  • 选择 属性兼容性
  • 勾选 以管理员身份运行此程序

5. 防火墙配置

# Windows防火墙允许程序通过
# 控制面板 → 系统和安全 → Windows Defender防火墙 → 允许应用通过防火墙
# 添加 ThCardReader.exe 到允许列表

▶️ 服务启动

1. 首次启动

  1. 以管理员身份运行 ThCardReader.exe
  2. 程序会自动启动HTTP服务(端口8321)
  3. 出现提示:读卡服务已成功启动。

2. 验证服务状态

# 浏览器访问测试
http://localhost:8321/readcard/huashi/health

# 预期返回
{
  "status": "healthy",
  "message": "华视读卡器服务运行正常",
  "timestamp": "2024-01-01 10:00:00"
}

3. 设置开机自启动(可选)

  1. 将程序快捷方式复制到:

    C:\Users\{用户名}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
    
  2. 或者通过注册表设置为Windows服务


❓ 常见问题

1. 端口占用问题

# 检查端口占用
netstat -ano | findstr :8321

# 如果端口被占用,修改配置文件中的端口号
# 或者结束占用进程

2. DLL文件缺失

# 错误:找不到XXX.dll
# 解决:确保所有DLL文件与exe在同一目录

3. 权限不足

# 错误:HTTP服务启动失败
# 解决:以管理员身份运行程序

4. 读卡器未识别

# 华视读卡器:检查USB连接,安装驱动
# 江苏医保读卡器:确保相关DLL文件完整

5. 网络连接问题

# 江苏医保功能需要网络连接
# 检查防火墙和网络配置

📞 技术支持

  • 项目版本:v1.0.0
  • 支持系统:Windows 7/8/10/11
  • 更新日期:2024年
  • 联系方式:请参考项目文档

注意事项

  1. 首次部署建议在测试环境验证功能
  2. 生产环境部署前备份现有系统
  3. 定期检查日志文件,及时处理异常
  4. 建议设置定期重启计划,保证服务稳定性