一个相当简单的问题;如何找到我的exe被放置在本地目录的路径?如果我有一个.exe,并且在程序中我必须在exe文件所在的目录下创建一个txt文件!本地路径
[语言 - C#]
所以,如果这个exe是在C:/ Temp文件夹,并从那里开始的;我的txt应该创建在C:/ Temp
如果用户希望将exe移到D:/ Temp并从那里运行;我应该可以创建在D:/ Temp
我试过Directory.GetCurrentDirectory(),但它返回程序的执行目录!
一个相当简单的问题;如何找到我的exe被放置在本地目录的路径?如果我有一个.exe,并且在程序中我必须在exe文件所在的目录下创建一个txt文件!本地路径
[语言 - C#]
所以,如果这个exe是在C:/ Temp文件夹,并从那里开始的;我的txt应该创建在C:/ Temp
如果用户希望将exe移到D:/ Temp并从那里运行;我应该可以创建在D:/ Temp
我试过Directory.GetCurrentDirectory(),但它返回程序的执行目录!
Assembly.GetExecutingAssembly().Location
你可以试试这个:
this.GetType().Assembly.CodeBase
,或者如果它是一个WinForms应用程序
Application.ExecutablePath
试试这个
sPath = System.AppDomain.CurrentDomain.BaseDirectory;
否则
sAppPath = Environment.CurrentDirectory;
类似的信息在System.Appdomain.BaseDirectory
中,程序集解析器用来探测程序集的基础目录。 在简单的情况下,这将指向原始组件的位置.exe
。
String path = AppDomain.CurrentDomain.BaseDirectory;
您可以使用Application.StartupPath。它获取启动应用程序的可执行文件的路径,不包括可执行文件的名称。
从VS 2010中的调试器运行时解析为“C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE“。 – 2011-01-28 13:39:42
“Assembly”类是System.Reflection命名空间的一部分 - 对于那些将要查找的人...... – 2013-05-14 14:17:13