我在this tutorial之后创建了我的run.vbs脚本。
当我手动启动run.vbs时,GoogleChromePortable会打开,我可以访问我的应用程序,但是当我从C#应用程序调用它时System.Diagnostics.Process.Start(mypath + "run.vbs"));
什么都没发生。 "随机"文件未创建,我没有错误。我用绝对路径替换了run.vbs中的相对路径以避免错误"系统找不到指定的文件",但我仍然停留在我的WinForms应用程序中。
我尝试创建.bat和.cmd,它们都可以手动完成,但不能通过代码执行。我试过了| process.WaitForExit()| :
var process = Process.Start(mypath + "run.bat");
process.WaitForExit();
没有GoogleChromePortable窗口......
答案 0 :(得分:0)
好的,这是我的解决方案......
在本教程中,runShinyApp.R引用了一个相对路径(./Shiny
),当我从应用程序调用run.vbs时,该路径未初始化。
所以,我用run.bat替换了run.vbs,然后用这个bat调用runShinyApp.R,包含:
CD /d "%~dp0"
%~dp0R-Portable\App\R-Portable\bin\Rscript.exe --vanilla %~dp0runShinyApp.R