.net 当前工做目录VS当前执行目录与shell

定义:       当前工做目录——进行某项操做的目的目录,会随着OpenFileDialogSaveFileDialog等对象所肯定的目录而改变。 函数

当前执行目录——该进程从中启动的目录,即文件自身所在目录。工做目录与执行目录能够不一样,例如一我的住在北京,但他的工做地点不必定在北京,可能在天津。 spa

方法: orm

一、获取和设置当前工做目录 对象

a)          System.IO.Directory.GetCurrentDirectory() 进程

说明:获取应用程序的当前工做目录的彻底限定路径。该方法是对Win32 APIGetCurrentDirectory函数的一个封装。 字符串

例如:'"C:\Documents and Settings\Administrator\My Documents" io

b)         System.Environment.CurrentDirectory   table

说明:获取或设置当前工做目录的彻底限定路径。该属性内部调用的就是System.IO.Directory.GetCurrentDirectory()方法,两者是效果是等价的。 form

例如:'"C:\Documents and Settings\Administrator\My Documents" file

c)          System.IO.Path.GetFullPath(".")

说明:获取指定路径字符串的绝对路径。也能够用GetFullPath(".\"),GetFullPath(".\\")

例如:'"C:\Documents and Settings\Administrator\My Documents"

二、获取和设置当前执行目录

a)          System.Windows.Forms.Application.StartupPath

说明:获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。经常使用于WinForm.

例如:'"D:\Projects\MyTest\bin"

b)         System.AppDomain.CurrentDomain.BaseDirectory

说明:获取基目录,它由程序集冲突解决程序用来探测程序集。返回路径末尾带“\

例如:'"D:\Projects\MyTest\bin\"

c)          System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase

说明:获取或设置包含该应用程序的目录的名称。返回路径末尾带“\

例如:'"D:\Projects\MyTest\bin\"

三、获取和设置当前执行目录,包括可执行文件名

a)          System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName

说明:获取模块的完整路径。包括可执行文件的名称。

例如:'"D:\Projects\MyTest\bin\MyTest.exe"

b)         System.Windows.Forms.Application.ExecutablePath

说明:获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。

例如:'"D:\Projects\MyTest\bin\MyTest.exe"

c)          System.Reflection.Assembly.GetExecutingAssembly().Location

说明:若是包含清单的已加载文件没有被影像复制,则获取该文件的基本代码格式的位置。

例如:'"D:\Projects\MyTest\bin\MyTest.exe"

d)         System.Reflection.Assembly.GetExecutingAssembly().CodeBase

说明:获取最初指定的程序集的位置,例如,在AssemblyName对象中指定的位置。

例如:'"file:///D:/Projects/MyTest/bin/MyTest.exe"

相关文章
相关标签/搜索