快速开始
环境准备
必要条件
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows 7/10/11 (32位/64位) |
| 开发环境 | Visual Basic 6.0 (SP6) |
| 依赖库 | VBMAN.dll(需注册到系统或放在程序目录) |
| 数据库引擎 | Microsoft Access Database Engine(用于 .mdb) |
VBMAN 依赖
本项目基于 VBMAN 框架 构建,需要确保 VBMAN.dll 可用:
- 将
VBMAN.dll放置到工程引用路径,或注册到系统:cmdregsvr32 VBMAN.dll - 在 VB6 IDE 中确认引用
VBMANLIB已勾选(工程 → 引用)
项目编译
编译服务端
- 打开
src-server/Server.vbp - 确认引用路径指向正确的
VBMAN.dll - 菜单选择 文件 → 生成 Server.exe
- 输出到
dist/服务端/Server.exe - 确保同目录下包含
data.mdb
编译客户端
- 打开
src-client/Client.vbp - 确认引用路径指向正确的
VBMAN.dll - 菜单选择 文件 → 生成 Client.exe
- 输出到
dist/客户端/Client.exe - 确保同目录下包含
config.ini
运行步骤
1. 启动服务端
双击运行 dist/服务端/Server.exe
- 服务端自动监听 TCP 800 端口
- 连接同目录下的
data.mdb数据库 - 窗体左侧显示用户列表,右侧显示操作日志
- 右上角显示当前在线客户端数量
2. 配置客户端
首次运行客户端时,需要配置服务器地址:
- 双击运行
dist/客户端/Client.exe - 弹出 参数配置 窗口
- 填写服务器 IP(本机测试填
127.0.0.1) - 填写端口(默认
800) - 点击 保存
或手动创建 config.ini:
ini
[Server]
IP=127.0.0.1
Port=8003. 登录测试
- 客户端自动连接服务端,状态栏显示"服务器已联机,请登录"
- 在 IDE 调试模式下,账号密码已自动填充为:
- 用户名:
wangli - 密码:
123456
- 用户名:
- 点击 登录
- 登录成功后,显示主窗体
Form1
若数据库中无此用户,可使用 Access 打开
data.mdb的users表手动添加记录。
功能体验
用户登录与在线状态
- 服务端
List1中在线用户会显示[ 在线 ]前缀并置顶 - 同一账号在另一客户端登录时,旧客户端会收到"账号在另外一个地方登录"提示并被踢下线
公告推送
- 在服务端点击菜单 推送公告
- 填写标题和内容,点击 立即推送
- 所有在线客户端会立即收到公告并显示在底部文本框
- 离线客户端重新登录后会自动请求最新公告
参数传输演示
- 客户端主窗体左侧显示 50 个参数名
- 点击任意参数,右侧显示当前值
- 修改值后,点击菜单 发送参数到服务器
- 服务端修改部分字段后回传,右侧显示服务端返回的完整 JSON
常见问题
连接失败
- 检查服务端是否已启动并监听 800 端口
- 检查客户端
config.ini中的 IP 和端口是否正确 - 检查 Windows 防火墙是否阻止了程序网络访问
数据库连接失败
- 确保
data.mdb与服务端 EXE 在同一目录 - 安装 Microsoft Access Database Engine 或确保系统已安装 Office/Access
VBMAN 引用丢失
- 在 VB6 IDE 中打开工程,检查 工程 → 引用 中
VBMANLIB是否标记为"丢失" - 重新浏览并选择正确的
VBMAN.dll路径
二次开发建议
新增业务接口
以新增 Order/Create 接口为例:
- 创建业务类: 在客户端和服务端分别新建
bOrder.cls - 实现方法:vb
' 服务端 Public Sub Create(Inst As cWinsock, Data As cJson) ' 处理创建订单逻辑 Common.SendTo Inst, "Order/Created", result End Sub ' 客户端 Public Sub Created(Inst As cWinsock, Data As cJson) ' 处理订单创建成功回调 End Sub - 注册路由: 在
fLogin.Form_Load(客户端)和Form1.RegRouter(服务端)中添加:vbCommon.Router.Add New bOrder, "Order" - 客户端调用:vb
Common.SendTo Insts.TcpClient, "Order/Create", orderData
新增中间件
- 新建
mLog.cls(参考mAuth.cls) - 实现
Entry函数,记录日志或进行其他前置处理 - 在服务端
RegRouter中添加到MiddleWares集合