我有program1将从program2启动,如下所示:
Process.Start(@"C:\myfolder\myprogram.exe");
在program2中我有一个值为的变量:Application.StartupPath。 如果我从桌面上的program1启动带有Process.Start(@“C:\ myfolder \ myprogram.exe”)的program2,myprogram的Application.StartupPath是桌面而不是myfolder。为什么?谢谢大家
答案 0 :(得分:2)
这是因为您从桌面启动了该程序。它有点像"开始于"从Windows快捷方式框。我通常使用下面的代码,因为它在查看当前可执行文件所在的位置时永远不会出错,但您也可以使用processstartinfo和工作目录启动它
string ThisFolder = new FileInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).Directory.FullName;
此致
利安