繁体   English   中英

如何从C#代码运行VBS脚本

[英]How to run VBS script from C# code

我要做的所有事情就是能够从后面的代码运行VBS脚本,但是我收到此错误:“系统找不到指定的文件”。 我知道路径名,我只需要执行该.vbs脚本,但这给了我很多时间,我无法弄清楚。 请帮忙。 谢谢这是我的代码

System.Diagnostics.Process.Start(@"cscript  //B //Nologo \\loc1\test\myfolder\test1.vbs");

我已经更新了如下所示的代码,但是我收到一条安全警告,询问我是否要打开它。 有没有一种方法不会得到这种警告,而只运行没有任何警告的脚本? 这是更新的代码:

  Process proc = null;
        try
        {
            string targetDir = string.Format(@"\\loc1\test\myfolder");//this is where mybatch.bat lies
            proc = new Process();
            proc.StartInfo.WorkingDirectory = targetDir;
            proc.StartInfo.FileName = "test1.vbs";
            proc.StartInfo.Arguments = string.Format("10");//this is argument
            proc.StartInfo.CreateNoWindow = false;
            proc.Start();
            proc.WaitForExit();
        }
        catch (Exception ex)
        {
           // Console.WriteLine("Exception Occurred :{0},{1}", ex.Message, ex.StackTrace.ToString());
        }

参数必须单独包含。 您可以使用一个参数字段将参数传递给流程。

您可以将其用作从应用程序使用命令行执行程序的指南。

您的代码对我来说工作正常, 我认为错误是在您的File Path中

更好地确认您提供的文件路径有效还是无效

您也可以像下面一样运行该文件。

Process scriptProc = new Process();
scriptProc.StartInfo.FileName = @"cscript"; 
scriptProc.StartInfo.Arguments ="//B //Nologo \\loc1\test\myfolder\test1.vbs";
scriptProc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
scriptProc.Start();
scriptProc.WaitForExit();
scriptProc.Close();

但是, 请检查您提供的文件路径

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM