首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Environment.CurrentDirectory对System.Reflection

Environment.CurrentDirectory对System.Reflection
EN

Stack Overflow用户
提问于 2012-01-20 10:17:19
回答 1查看 1.4K关注 0票数 5

从以下获得执行程序集的工作目录的方法中,是否有关于哪一个被认为是最佳实践的建议?我从我的开发人员那里听说,方法1有时会在Windows7 SP1 64位上失败,除非使用提升的权限运行(以管理员身份运行)。但是方法2一直有效。前者有时会失败,有什么原因吗?

方法1:

代码语言:javascript
复制
System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly.Location())

方法2:

代码语言:javascript
复制
Environment.CurrentDirectory
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-20 10:29:46

Environment.CurrentDirectory是获得工作目录的方法。使用反射也可能比较慢。

但是要小心:这两种方法并不相同:方法A总是返回存储程序集的目录,因为Environment.CurrentDirectory提供了当前工作目录,该目录在应用程序生存期内可以更改,因为Environment.CurrentDirectory也可以用来设置工作目录,其他方法也可以更改它(例如,文件打开/保存对话框)。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8939824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档