系统无法找到指定的文件,但在命令行中直接工作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统无法找到指定的文件,但在命令行中直接工作相关的知识,希望对你有一定的参考价值。
我正在努力通过无头浏览使用Chrome打印到PDF功能。
我的代码非常简单
var command = "C:\Program Files(x86)\Google\Chrome\Application\chrome.exe --headless --disable-gpu --print-to-pdf="D:\GitHub\MySite\bin\Debug\Temp\createPdf180303084003.pdf" http://localhost/mypage";
Process.Start(command);
当我查看我的command
并复制字符串,并将其粘贴到命令提示符时,它工作正常。
这是在一个系统上,所以我不明白为什么它在命令提示符下工作,而不是在我的C#Web应用程序中。
答案
试试这个
ProcessStartInfo proc = new ProcessStartInfo();
proc.FileName = @"C:Program Files(x86)GoogleChromeApplicationchrome.exe";
proc.Arguments = @"--headless --disable-gpu --print-to-pdf=""D:\GitHub\MySite\bin\Debug\Temp\createPdf180303084003.pdf"" http://localhost/mypage";
Process.Start(proc);
另一答案
系统现在正在搜索文件"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe --headless --disable-gpu --print-to-pdf="D:\GitHub\MySite\bin\Debug\Temp\createPdf180303084003.pdf" http://localhost/mypage"
,但是你希望它用一些参数启动"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe"
。你需要做的是:
Process process = new Process();
process.StartInfo.FileName = "chrome";
process.StartInfo.Arguments = "arguments";
process.Start();
以上是关于系统无法找到指定的文件,但在命令行中直接工作的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 system() 在 matlab 中运行可执行文件,但它可以在命令行中运行
当在命令行中未指定配置文件时,Spring Boot 集成测试无法获取默认配置文件并引发错误
无法找到指定的dll库文件“SkinH_EL.dll中的输出命令"SkinH_Attach_Ex"