跳到主要内容

发布与安装

插件包构建

打包工具

ToolBank 提供内置的"制作插件包"功能,可将 DLL 和资源打包为标准插件包。

操作步骤

  1. 打开 插件管理器 → 点击 "发布插件"
  2. 在弹出窗口中填写信息:
字段说明示例
插件输出目录DLL 所在目录D:\Build\Plugin.MyPlugin\Release
入口 DLL主 DLL 文件名Plugin.MyPlugin.dll
插件 ID唯一标识Plugin.MyPlugin
显示名用户可见名称我的插件
版本号语义化版本1.0.0
厂商开发者/公司YourCompany
说明功能描述自定义图像处理算子
  1. 点击 "导出" 生成 ZIP 包

插件包结构

Plugin.MyPlugin_1.0.0.zip
├── Plugin.MyPlugin.dll # 入口 DLL
├── 依赖文件.dll # 依赖库
├── manifest.json # 描述文件
└── Resource/ # 资源文件(可选)
└── icon.png

manifest.json 自动生成

{
"plugin_id": "Plugin.MyPlugin",
"display_name": "我的插件",
"version": "1.0.0",
"vendor": "YourCompany",
"description": "自定义图像处理算子",
"entry_dll": "Plugin.MyPlugin.dll",
"author": "Developer",
"created_at": "2026-07-28T12:00:00"
}

插件安装

本地安装

  1. 打开 插件管理器 → 点击 "安装插件包"
  2. 选择 .zip 格式的插件包
  3. 等待安装完成

在线安装

  1. 在线插件市场 中搜索插件
  2. 选择需要的插件版本
  3. 点击 "在线安装" 按钮

插件目录结构

ToolBank/
├── Plugins/
│ ├── Plugin.CV/
│ │ ├── 1.0.0/
│ │ │ └── Plugin.CV.dll
│ │ └── 1.0.6/
│ │ └── Plugin.CV.dll
│ ├── Plugin.DL/
│ │ └── 2.0.0/
│ │ └── Plugin.DL.dll
│ └── Plugin.MyPlugin/
│ └── 1.0.0/
│ └── Plugin.MyPlugin.dll
└── plugins.lock.json # 版本锁定文件

版本管理

启用/禁用版本

在插件管理器的 版本详情 区域:

  • 勾选 "启用" 列的复选框
  • 每个插件只能启用一个版本

删除版本

  1. 选择插件和版本
  2. 点击 "删除所选版本"

重载插件

点击 "重载插件" 按钮,重新扫描并加载所有已安装插件。

插件发布

发布到插件市场

  1. 插件管理器 点击 "发布插件"
  2. 先登录插件市场账号
  3. 选择要发布的 ZIP 包
  4. 填写发布说明
  5. 点击发布

发布 API

POST /api/packages/publish
Content-Type: multipart/form-data

file: <zip文件>
api_key: <用户API密钥>
release_notes: <发布说明>

发布响应

{
"success": true,
"message": "发布成功",
"packageId": "Plugin.MyPlugin",
"version": "1.0.0"
}

版本兼容检查

发布时系统会检查:

  • min_host_version - 主程序最低版本
  • min_toolbase_version - ToolBase 最低版本

确保插件在兼容的环境中运行。

插件市场 API

搜索插件

GET /api/packages/search?keyword=图像&page=1&page_size=50

响应示例

{
"packages": [
{
"package_id": "Plugin.CV",
"display_name": "计算机视觉插件",
"latest_version": "1.0.6",
"author": "ToolBank",
"downloads": 1234,
"rating": 4.8,
"description": "提供图像处理和分析工具"
}
]
}

获取插件详情

GET /api/packages/{packageId}

下载插件

GET /api/packages/{packageId}/versions/{version}/download

用户认证

注册

POST /api/user/register
Content-Type: application/json

{
"username": "developer",
"email": "dev@example.com",
"password": "secret"
}

登录

POST /api/user/login
Content-Type: application/json

{
"email": "dev@example.com",
"password": "secret"
}

Token 使用

后续请求在 Header 中携带 API Key:

X-API-Key: <api_key>

安装故障排除

问题原因解决方案
DLL 加载失败缺少依赖使用 Dependencies 工具检查依赖
版本不兼容主程序版本过低升级主程序或使用兼容版本
权限不足目录无写入权限以管理员身份运行
manifest 缺失包结构错误重新打包,确保包含 manifest.json
算子注册失败DLL 导出函数缺失检查 ExportDll 实现

最佳实践

版本号规范

遵循语义化版本规范:

  • 1.0.0 - 主版本.次版本.修订号
  • 重大变更升级主版本号
  • 新增功能升级次版本号
  • Bug 修复升级修订号

插件命名规范

Plugin.<功能域>

示例:

  • Plugin.CV - Computer Vision
  • Plugin.DL - Deep Learning
  • Plugin.Finance - Finance
  • Plugin.Robot - Robotics

文档要求

每个插件应包含:

  1. README - 插件说明和使用方法
  2. API 文档 - 算子输入输出参数说明
  3. 示例程序 - 典型应用场景演示
  4. 版本历史 - 变更日志