File vbs,如何在当前代码中添加一些代码?
我想在脚本中执行一个代码,同时知道我要执行的代码的路径(它是一个.vbs文件)。我不知道我应该使用Eval还是有其他方法?尝试使用:File vbs,如何在当前代码中添加一些代码?,file,vbscript,add,File,Vbscript,Add,我想在脚本中执行一个代码,同时知道我要执行的代码的路径(它是一个.vbs文件)。我不知道我应该使用Eval还是有其他方法?尝试使用: Set WSHShell = CreateObject("WScript.Shell") WSHShell.Run "wscript " & strFileName, , True 如果第二个.vbs文件是第一个.vbs应该“像从命令行一样”执行的完整脚本,则按照Marco的建议使用.Run(或.Exec) 如果第二个.vbs是一个模块,其中包含一些
Set WSHShell = CreateObject("WScript.Shell")
WSHShell.Run "wscript " & strFileName, , True
如果第二个.vbs文件是第一个.vbs应该“像从命令行一样”执行的完整脚本,则按照Marco的建议使用.Run(或.Exec) 如果第二个.vbs是一个模块,其中包含一些要在第一个.vbs中使用的函数/子函数/类,请对第二个文件的.ReadAll()执行[Global] 如果您可以/希望将第一个文件重新编码为.wsf,则可以使用带有src属性的脚本标记来“导入”模块。简约演示: 模块:
'' mod.vbs
Function SampleFunc()
SampleFunc = "mod::SampleFunc()"
End Function
主文件:
<job>
<script language="VBScript" src="mod.vbs" />
<script language="VBScript">
WScript.Echo WScript.ScriptName
WScript.Echo SampleFunc()
</script>
</job>
另一种策略是将模块代码放入.wsc文件中;这为您提供了一个COM组件,您可以通过CreateObject()注册和使用,也可以通过GetObject(“script:
)加载
cscript main.wsf
main.wsf
mod::SampleFunc()