Skip to content

cPLI 外部程序接口组件 ​

简介 ​

cPLI (Programmable Language Interface) 是一个外部程序调用接口组件,用于在 VB6 应用程序中调用外部可执行程序(如 Python、Node.js 等脚本),并通过标准输入输出进行数据交换。

工作原理 ​

┌─────────────────┐      ┌─────────────────┐      ┌─────────────────┐
│   VB6 应用程序   │ ──▶ │  cPLI 组件      │ ──▶ │  外部程序 (PLI)  │
│                 │      │                 │      │                 │
│  PLI.Request()  │      │  Base64编码参数  │      │  VBMAN.PLI      │
│                 │      │  执行命令        │      │  (Python/Exe)   │
│  获取返回结果    │ ◀──  │  返回结果        │ ◀──  │  处理数据       │
└─────────────────┘      └─────────────────┘      └─────────────────┘

文件说明 ​

文件说明
VBMAN.PLI外部可执行程序(主程序)
VBMAN.PSC脚本/配置文件
VBMAN.DAT数据交换文件(大返回值时使用)

特性 ​

  • 参数传递: 使用 Base64 + UTF-8 编码传递参数
  • 超时控制: 可设置命令执行超时时间
  • 大返回值: 支持通过文件返回大量数据
  • 自动搜索: 自动在多个路径查找 PLI 程序

快速开始 ​

基础调用 ​

vb
Dim PLI As New cPLI
Dim result As String

' 调用外部程序
result = PLI.Request("param1", "param2", "param3")

Debug.Print "返回结果: " & result

设置超时 ​

vb
Dim PLI As New cPLI

' 设置 60 秒超时(默认 30 秒)
PLI.TimeOut = 60 * 1000

Dim result As String
result = PLI.Request("data")

处理 JSON 数据 ​

vb
Dim PLI As New cPLI

' 发送 JSON 数据
Dim json As String
json = "{\"name\":\"张三\",\"age\":25}"

Dim result As String
result = PLI.Request(json)

' 解析返回的 JSON
Dim response As New cJson
response.Decode result
Debug.Print response.GetItem("status")

文件路径搜索顺序 ​

组件会按以下顺序搜索 VBMAN.PLI:

  1. App.Path\VBMAN.PLI
  2. App.Path\bin\VBMAN.PLI
  3. App.Path\..\bin\VBMAN.PLI

如果找不到,会抛出 404 错误。

典型应用场景 ​

场景说明
Python 脚本调用 Python 进行数据处理、AI 推理
Node.js 程序调用 JavaScript 工具
命令行工具调用系统命令行程序
数据处理复杂计算、格式转换等

最后更新: 2026-05-17

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