看一下这个伪代码:
string exe_path = system.get_exe_path()
print "This executable is located in " + exe_path
如果我构建上述程序并将可执行文件放在中C:/meow/
,This executable is located in C:/meow/
则无论当前工作目录如何,每次运行时它都会打印出。
我怎样才能轻松地完成此操作C#
?
看一下这个伪代码:
string exe_path = system.get_exe_path()
print "This executable is located in " + exe_path
如果我构建上述程序并将可执行文件放在中C:/meow/
,This executable is located in C:/meow/
则无论当前工作目录如何,每次运行时它都会打印出。
我怎样才能轻松地完成此操作C#
?
Answers:
MSDN上有一篇文章说要使用System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase
;如果您需要目录,请使用System.IO.Path.GetDirectoryName
该结果。
或者,简称Application.ExecutablePath
为“获取启动应用程序的可执行文件的路径,包括可执行文件的名称”,因此这可能意味着它的可靠性稍差,具体取决于启动应用程序的方式。
System.Path.GetDirectoryName( Assembly.GetExecutingAssembly().Location ) );
AppDomain.CurrentDomain.BaseDirectory
“获取包含清单的已加载文件的路径或UNC位置。”
请参阅:http://msdn.microsoft.com/en-us/library/system.reflection.assembly.location.aspx
Application.ResourceAssembly.Location
Application
是封装WPF应用程序特定功能的类”。