swnuwangyun-曲终人散成一梦,繁华落尽原是空

专注于:移动设备(Windows Mobile),射频识别(RFID, EPC),嵌入式系统。还有技术攻关,呵呵!

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  61 随笔 :: 1 文章 :: 118 评论 :: 5 引用
方法1:
Directory.GetCurrentDirectory()。
这个方法只能在.NET的完整版中使用,NETCF中不支持该功能,调用时会引发异常。

方法2:
System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase)。
这个方法是MSDN中给出的针对NETCF平台的,当在PC的NET完整版中获取到的路径中测试时,发现最终的路径中带有file:前缀,如file:\c:\debug,一般情况下我们并不需要这个前缀,可以手动将其去掉。

方法3:
System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().ManifestModule.FullyQualifiedName).
该方法也是针对NETCF给出的解决方案,当在PC的NET完整版测试中可以获取到一致的结果。

小结:
如果考虑到代码在PC和PDA上的兼容性,则建议使用第三种方法。第一种方法是万万不行的,而且第一种方式获取到的路径也并不一定就是真正的应用程序所在的路径。
posted on 2007-01-18 16:49 swnuwangyun 阅读(1308) 评论(2)  编辑 收藏 网摘

评论

#1楼 2007-01-18 18:00 Icebird      
我都是这样取路径的,没有用到Assembly
Application.StartupPath

  回复  引用  查看    

#2楼[楼主] 2007-01-18 18:02 swnuwangyun      
Application.StartupPath 在NETCF中不支持
  回复  引用  查看    




发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 623976




相关文章:

相关链接: