Skip to content

🚀 VBMAN2 升级公告

📅 公告日期:2026.06.01

🎉 重要通知:VBMAN2 战略升级

关于 VBMAN2 的重大变更

VBMAN2 早期是基于 TwinBasic 的 WebView2 控件封装给 VB6/VBA 使用的纯 WebView2 控件库,编译产物是 OCX 控件文件。

2026.05.25 重大更新:我们将 TwinBasic WebView2 控件重写为 DLL 对象,通过渲染到任何有句柄的原生控件(如 Form1.hWndPicture1.hWnd)即可显示网页,解决了 OCX 控件文件的烦恼,并且为升级 VBMAN 打下了最好的基础。

核心变更

项目原 VBMAN2新 VBMAN2
编译产物OCX 控件DLL 组件
与 VBMAN 关系独立库VBMAN 的升级版
开发状态停止更新持续开发中

升级建议

原有的 vbman.ocx 控件将不再继续开发,请所有用户在 VBMAN2.DLL 正式发布后及时升级。

VBMAN2 将成为 VBMAN 的最佳升级版,带来更多强大功能:

  • 🚀 高性能 IOCP 网络库
  • 🌐 基于 IOCP 的 HTTP 服务器
  • ⚡ 真正可调试的多线程池
  • 🤖 真正可用的 AI 对象
  • 🗄️ 集合各种数据库驱动
  • ... 更多惊喜功能

⏳ 敬请期待

VBMAN2.DLL 正在紧张开发中,敬请期待!

我们会在第一时间发布新版本,敬请关注:

VBMAN2 没有开源计划,但同样的,永久免费使用二进制 DLL


VBMAN2 核心特性预览

双向数据绑定

VBMAN2 提供类似 Vue 的双向数据绑定能力,实现 VB6/VBA 宿主与 WebView2 网页 UI 的无缝联动:

方向API说明
UI → VB6/VBABindUI / UnbindUIDOM 事件触发 → 回调宿主方法
VB6/VBA → UIBindData / SetData宿主设值 → 自动更新 DOM 属性

核心设计:显式组合而非隐式劫持。不同于 Vue 依赖 ES6 Proxy 的自动数据劫持,VBMAN2 采用 BindUI + BindData 显式组合,更适合跨进程 WebView2 场景,且完全兼容 VB6/VBA:

vb
' 单向绑定: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 协议
  • 💼 商业授权可选 — 闭源商业项目可联系获取授权

访问 VBMAN 文档  |  查看代码仓库

VB6及其LOGO版权为微软公司所有