文档章节

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

LMcallme
 LMcallme
发布于 2013/04/10 17:33
字数 571
阅读 186
收藏 6

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

当前执行目录——该进程从中启动的目录,即文件自身所在目录。工作目录与执行目录可以不同,例如一个人住在北京,但他的工作地点不一定在北京,可能在天津。

方法:

1、获取和设置当前工作目录

a)          System.IO.Directory.GetCurrentDirectory()

说明:获取应用程序的当前工作目录的完全限定路径。该方法是对Win32 APIGetCurrentDirectory函数的一个封装。

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

b)         System.Environment.CurrentDirectory  

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

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

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

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

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

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

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\"

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

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"

本文转载自:http://www.cnblogs.com/fsjohnhuang/articles/2540440.html

共有 人打赏支持
LMcallme
粉丝 8
博文 51
码字总数 16744
作品 0
通州
shell编程:linux命令——find详解

当系统子目录或文件越来越多时,查找文件比较困难,这时可以借助find工具查找满足条件的文件。 一、语法格式: find [path] [expression] [action] path参数为指定find所要查找的目录的起点。...

shw23
2016/06/14
13
0
bash shell 获取当前正在执行脚本的绝对路径

如题,一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本,可能使用相对路径更加灵活一点...

大数据之路
2013/08/07
0
3
[shell]shell 中| && || () {} 用法以及shell的逻辑与或非

| 运算符 管道符号,是unix一个很强大的功能,符号为一条竖线:"|"。 用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为command2的输入传给command 2,例如: $ls -...

lbfamous
03/30
0
0
Bash如何取得当前正在执行的脚本的绝对路径?

如题,一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本,可能使用相对路径更加灵活一点...

bobwei
2015/12/08
37
0
shell中&&和||的使用方法

&&运算符: command1 && command2 &&左边的命令(命令1)返回真(即返回0,成功被执行)后,&&右边的命令(命令2)才能够被执行;换句话说,“如果这个命令执行成功&&那么执行这个命令”。 语法...

高健2013
2015/02/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

申请Let's Encrypt永久免费SSL证书

环境安装 1、安装git yum install git-core 2、安装python 系统自带 不用安装 只要版本大于2.7即可。 获取Let's Encrypt免费SSL证书 先停止nginx 在阿里云安全组里加入 443端口的入规则 git ...

HGMrWang
28分钟前
1
0
如何使用playframework进行更好的开发

1: 自定义基类Controller 相信刚开始使用Play的人写的Controller 都继承于 play.mvc.Controller , 但这并不是一个很好的选择,自建基类Controller可以扩展更多的功能。 1.1 验证功能。 后台...

tuerqidi
33分钟前
4
0
解决ubuntu下root用户 不能ftp登陆的问题

解决ubuntu下root用户 不能ftp登陆的问题 一般情况下,由于种种原因ftp是不让root用户远程登陆,但只要你修改以个文件就可以登陆了. 注释掉 /etc/ftpusers 中的root即可 (最后重启vsftpd serv...

15834278076
45分钟前
0
0
《JavaScript高级程序设计(第3版)》阅读笔记

第6章 面向对象的程序设计 6.2 创建对象 6.2.1 工厂模式 JavaScript创建对象(一)—— 工厂模式 6.2.2 构造函数模式 JavaScript创建对象(二)——构造函数模式 6.2.3 原型模式 JavaScript...

Bob2100
50分钟前
1
0
Windows小技巧 – Win+R提高Windows使用效率

追求效率的朋友都需要一款顺手的快速启动工具,Win 平台上有键盘流的RunZ、Listary、ALTRun、Launchy、Wox 和图标流的 Fences、Rolan、 WinLaunch 等,而 Mac 上也有 Alfred、Spotlight。 而...

QQZZFT
52分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部