«

外部信息框

时间:2026-4-24 08:28     作者:六度科技     分类: 易语言


.版本 2
.支持库 shell
.支持库 spec

.子程序 显示独立信息框
.参数 提示内容, 文本型
.参数 提示标题, 文本型
.局部变量 vbs代码, 文本型
.局部变量 vbs路径, 文本型
.局部变量 命令行, 文本型

' VBS 转义处理
提示内容 = 子文本替换 (提示内容, #引号, #引号 + #引号, , , 真)
' 易语言换行符 → VBS 换行符(vbCrLf)
提示内容 = 子文本替换 (提示内容, #换行符, #引号 + “ & vbCrLf & ” + #引号, , , 真)
提示标题 = 子文本替换 (提示标题, #引号, #引号 + #引号, , , 真)

' 生成 VBS 代码(MsgBox 支持自定义标题)
vbs代码 = “MsgBox ” + #引号 + 提示内容 + #引号 + “, 64, ” + #引号 + 提示标题 + #引号

' 写入临时文件
vbs路径 = 取特定目录 (11) + “temp_msgbox_” + 到文本 (取启动时间 ()) + “.vbs”
调试输出 (vbs路径)
写到文件 (vbs路径, 到字节集 (vbs代码))

' 执行 VBS,不等待
命令行 = “wscript ” + #引号 + vbs路径 + #引号
运行 (命令行, 假, )
.子程序 显示独立信息框_方案二, , 公开
.参数 提示内容, 文本型
.参数 提示标题, 文本型
.局部变量 vbs代码, 文本型
.局部变量 vbs路径, 文本型
.局部变量 命令行, 文本型

' VBS 转义处理
提示内容 = 子文本替换 (提示内容, #引号, #引号 + #引号, , , 真)
' 易语言换行符 → VBS 换行符(vbCrLf)
提示内容 = 子文本替换 (提示内容, #换行符, #引号 + “ & vbCrLf & ” + #引号, , , 真)
提示标题 = 子文本替换 (提示标题, #引号, #引号 + #引号, , , 真)

' 使用 WScript.Shell.Popup
vbs代码 = “Set WshShell = WScript.CreateObject(” + #引号 + “WScript.Shell” + #引号 + “)” + #换行符
vbs代码 = vbs代码 + “WshShell.Popup ” + #引号 + 提示内容 + #引号 + “, 0, ” + #引号 + 提示标题 + #引号 + “, 64” + #换行符
vbs代码 = vbs代码 + “Set WshShell = Nothing”

' 写入临时文件
vbs路径 = 取特定目录 (11) + “temp_popup_” + 到文本 (取启动时间 ()) + “.vbs”
写到文件 (vbs路径, 到字节集 (vbs代码))
调试输出 (vbs路径)

' 执行 VBS,不等待
命令行 = “wscript ” + #引号 + vbs路径 + #引号
运行 (命令行, 假, )