🚀 VBMAN2 升级公告
📅 公告日期:2026.06.01
🎉 重要通知:VBMAN2 战略升级
关于 VBMAN2 的重大变更
VBMAN2 早期是基于 TwinBasic 的 WebView2 控件封装给 VB6/VBA 使用的纯 WebView2 控件库,编译产物是 OCX 控件文件。
2026.05.25 重大更新:我们将 TwinBasic WebView2 控件重写为 DLL 对象,通过渲染到任何有句柄的原生控件(如 Form1.hWnd、Picture1.hWnd)即可显示网页,解决了 OCX 控件文件的烦恼,并且为升级 VBMAN 打下了最好的基础。
核心变更
| 项目 | 原 VBMAN2 | 新 VBMAN2 |
|---|---|---|
| 编译产物 | OCX 控件 | DLL 组件 |
| 与 VBMAN 关系 | 独立库 | VBMAN 的升级版 |
| 开发状态 | 停止更新 | 持续开发中 |
升级建议
原有的 vbman.ocx 控件将不再继续开发,请所有用户在 VBMAN2.DLL 正式发布后及时升级。
VBMAN2 将成为 VBMAN 的最佳升级版,带来更多强大功能:
- 🚀 高性能 IOCP 网络库
- 🌐 基于 IOCP 的 HTTP 服务器
- ⚡ 真正可调试的多线程池
- 🤖 真正可用的 AI 对象
- 🗄️ 集合各种数据库驱动
- ... 更多惊喜功能
⏳ 敬请期待
VBMAN2.DLL 正在紧张开发中,敬请期待!
我们会在第一时间发布新版本,敬请关注:
- 📢 官方网站:https://vb6.pro
- 💬 QQ 交流群:915520648 点击加群
- 📦 代码仓库:https://gitcode.com/woeoio/vbman
VBMAN2 没有开源计划,但同样的,永久免费使用二进制 DLL。
VBMAN2 核心特性预览
双向数据绑定
VBMAN2 提供类似 Vue 的双向数据绑定能力,实现 VB6/VBA 宿主与 WebView2 网页 UI 的无缝联动:
| 方向 | API | 说明 |
|---|---|---|
| UI → VB6/VBA | BindUI / UnbindUI | DOM 事件触发 → 回调宿主方法 |
| VB6/VBA → UI | BindData / SetData | 宿主设值 → 自动更新 DOM 属性 |
核心设计:显式组合而非隐式劫持。不同于 Vue 依赖 ES6 Proxy 的自动数据劫持,VBMAN2 采用 BindUI + BindData 显式组合,更适合跨进程 WebView2 场景,且完全兼容 VB6/VBA:
' 单向绑定:VB6/VBA → UI
wv.BindData "username", "#user-name", "textContent"
wv.SetData "username", "张三" ' UI 自动更新
' 双向绑定:输入框 ↔ VB6/VBA
wv.BindData "search", "#search-input", "value" ' 数据 → UI
wv.BindUI Me, "OnSearch", "#search-input", EventName:="input" ' UI 事件 → VB6/VBA
Public Sub OnSearch(ByVal EventName As String, ByVal Detail As String)
wv.SetData "search", JsonParser.GetValue(Detail, "value") ' 回写数据
End Sub支持的 DOM 属性:textContent / innerHTML / value / checked / disabled / visible / className / src / href / style 等,同时支持批量更新 SetDataBatch 减少 IPC 调用。
VBMAN 开源项目
VBMAN 已于 2026年6月1日 正式以 GPL v3 协议开源!
- 🔓 二进制永久免费 — 编译后的 DLL/OCX 无任何使用限制
- 📖 源代码开放 — 遵循 GPL v3 协议
- 💼 商业授权可选 — 闭源商业项目可联系获取授权