c# – 使用System.Diagnostics.Process.Start运行程序会导致应用
发布时间:2020-12-16 01:38:47 所属栏目:百科 来源:网络整理
导读:在我的电脑上打开DWG文件: "C:Program FilesAutoCAD LT 2007acadlt.exe" "%1" 如果我从命令行运行它: "C:Program FilesAutoCAD LT 2007acadlt.exe" "C:Some PathTest.dwg" AutoCAD Lite打开DWG文件. 类似地,如果我打开命令提示符并使用参数运行相
在我的电脑上打开DWG文件:
"C:Program FilesAutoCAD LT 2007acadlt.exe" "%1" 如果我从命令行运行它: "C:Program FilesAutoCAD LT 2007acadlt.exe" "C:Some PathTest.dwg" AutoCAD Lite打开DWG文件. 类似地,如果我打开命令提示符并使用参数运行相同的exe,它可以正常工作. 但是,如果我使用 var proc = new System.Diagnostics.Process(); var info = new System.Diagnostics.ProcessStartInfo(); 然后 info.FileName = "C:Some PathTest.dwg"; proc.StartInfo = info; proc.Start(); 要么 info.FileName = "C:Program FilesAutoCAD LT 2007acadlt.exe"; info.Arguments= "C:Some PathTest.dwg" proc.StartInfo = info; proc.Start(); 要么 info.FileName = "cmd.exe"; info.Arguments= "C:Program FilesAutoCAD LT 2007acadlt.exe" "C:Some PathTest.dwg" proc.StartInfo = info; proc.Start(); 我收到以下错误: acadlt.exe – 应用程序错误 “0x01317c8c”处的指令引用“0x01317c8c”处的存储器.内存无法“读取”. 单击“确定”以终止该程序 确定取消 顺便提一下,如果我使用调试器逐步执行代码,代码就可以了. 有谁知道如何使用Process.Start打开这个DWG? 解决方法
确保指定了正确的工作文件夹:
info.WorkingDirectory = "same path as current directory in cmd.exe"; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |