Csharp/C#教程:c#中的批处理文件执行分享


c#中的批处理文件执行

我正在从C#运行Java批处理文件。 如果我通过双击它运行它成功执行,但如果我从C#代码运行它它在线程中给出exception

“main”线程中的exceptionjava.lang.noclassdeffoundError“..

可能是什么原因以及如何解决? 我正在使用代码:

var si = new ProcessStartInfo(); si.CreateNoWindow = true; si.FileName = "batch-file path"; si.UseShellExecute = true; Process.Start(si); 

您很可能遗漏了系统环境变量中包含的一些参数。

尝试像这样设置工作目录

 process.StartInfo.WorkingDirectory = "C:"; 

另外,尝试这里提到的其他几个选项,

https://social.msdn.microsoft.com/Forums/en/csharpgeneral/thread/20992653-dabf-4b31-85f7-e7bfbfb4557c

尝试将以下代码添加为批处理文件的第一行。

 @cd /d %~dp0 

不要使用batch_process_path +“”+而是使用Path.Combine()来确保路径正确配有斜杠。

另请阅读 “当UseShellExecute为true时,WorkingDirectory属性指定可执行文件的位置”

所以把它设置为假。

上述就是C#学习教程:c#中的批处理文件执行分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

www.ctvol.com true Article Csharp/C#教程:c#中的批处理文件执行分享

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1027653.html

(0)
上一篇 2022年1月10日 上午6:38
下一篇 2022年1月10日 上午6:39

精彩推荐