作者:红糖里有砂 | 来源:互联网 | 2023-02-08 10:19
我正在尝试编写一个批处理+ hta混合脚本,它允许我将变量从脚本的批处理部分传递到hta部分,这样我就可以生成像计算机型号等的东西.
这是我到目前为止 - 批次:
正如您所看到的,我尝试将其%model%
用作参数,并尝试arg1
在我的Vbscript部分中尝试使用该变量 - 但它不起作用.
所以在我的hta部分中,这是我的Vbscript:
这只是打开一个空盒子.
我一直在寻找一段时间在线试图找到一种方法来做到这一点,我无法弄明白.我之前解决这个问题的方法基本上是创建一个批处理脚本来创建一个新文件,即hta和batch hybrid,但我想避免为了简单起见而这样做.
任何帮助将非常感激
1> rojo..:
您可以使用Wscript.Shell
COM对象的Environment
对象访问HTA运行时中的环境变量.您可以使用在标准输出的数据传递从HTA回批量线程Scripting.FileSystemObject
的GetStandardStream
方法.以下是两者的演示:
对于它的价值,你也可以cscript
通过kludging伪装.wsf文件扩展名以混合格式访问Vbscript .除了消除出现和消失的HTA窗口的短暂闪烁之外,优点是您可以直接传递脚本参数而无需访问Environment("Process")
范围.
而混合批次+ JScript中更容易.使用.wsf方法也可以将Vbscript和JScript代码作为多个作业.