程序 Application.StartupPath 的值

Value of the Application.StartupPath of a program

我有程序 1,它将像这样从程序 2 启动:

Process.Start(@"C:\myfolder\myprogram.exe"); 

在 program2 中,我有一个变量,其值为:Application.StartupPath。 如果我从桌面上的 program1 使用 Process.Start(@"C:\myfolder\myprogram.exe") 启动 program2,myprogram 的 Application.StartupPath 是桌面而不是 myfolder。为什么?谢谢大家

这位姐姐是因为您是从桌面启动程序的。它有点像 windows 快捷方式中的 "start in" 框。我通常使用下面的代码,因为它会查看当前可执行文件所在的位置,因此永远不会出错,但您也可以使用 processstartinfo 和工作目录

启动它

https://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.workingdirectory(v=vs.110).aspx

string ThisFolder = new FileInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).Directory.FullName;

此致

利亚姆