使用 VBA 控制 VBScript
Posted
技术标签:
【中文标题】使用 VBA 控制 VBScript【英文标题】:Control VBScript using VBA 【发布时间】:2013-07-02 07:30:36 【问题描述】:为了实现多线程,我使用 VBA 编写 VBScript 代码 (VBStr
) 并即时写入文件,然后异步启动这些帮助脚本:
Dim VBFile As Object
Dim VBPath As String
VBPath = CurrentProject.Path & "\" & GUID() & ".vbs"
Set VBFile = CreateObject("Scripting.FileSystemObject").CreateTextFile(VBPath)
VBFile.WriteLine VBStr
VBFile.Close
Dim Shell As Object
Set Shell = CreateObject("Wscript.Shell")
Shell.Run """" & VBPath & """"
但是,如何在 VBA 中控制这些脚本?我似乎无法得到它们的句柄或参考。假设我想在 60 秒后终止挂起/停滞的脚本 - 如何执行此操作?
【问题讨论】:
【参考方案1】:使用 .Exec 而不是 .Run。返回的WshScriptExec Object 具有监控进程状态和终止进程的方法/属性。
【讨论】:
以上是关于使用 VBA 控制 VBScript的主要内容,如果未能解决你的问题,请参考以下文章