Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File vbs,如何在当前代码中添加一些代码?_File_Vbscript_Add - Fatal编程技术网

File vbs,如何在当前代码中添加一些代码?

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是一个模块,其中包含一些

我想在脚本中执行一个代码,同时知道我要执行的代码的路径(它是一个.vbs文件)。我不知道我应该使用Eval还是有其他方法?

尝试使用:

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()