博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
获取DLL文件的执行路径
阅读量:6457 次
发布时间:2019-06-23

本文共 646 字,大约阅读时间需要 2 分钟。

在写类库项目时,经常会有某些特殊业务需要用到服务器端的物理路径,使用传统的System.IO.Directory.GetCurrentDirectory()方法返回的则是WINNT\System32目录,这个一般不能满足正常的业务需求,而要得到具体运行DLL所在的物理目录可以通过Assembly.GetExecutingAssembly().CodeBase属性来取得,具体参考方法如下:
ExpandedBlockStart.gif
ContractedBlock.gif
        
/**/
/// <summary>
InBlock.gif        
/// 获取Assembly的运行路径
InBlock.gif        
/// </summary>
ExpandedBlockEnd.gif        
/// <returns></returns>
None.gif
        
private
 
string
 GetAssemblyPath()
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif
{
InBlock.gif            
string _CodeBase = System.Reflection.Assembly.GetExecutingAssembly().CodeBase ;
InBlock.gif
InBlock.gif            _CodeBase 
= _CodeBase.Substring(8,_CodeBase.Length - 8);    // 8是 file:// 的长度
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif            
string[] arrSection = _CodeBase.Split(new char[]dot.gif{
'/'}
);
InBlock.gif            
InBlock.gif            
string _FolderPath = "";
InBlock.gif            
for(int i=0;i<arrSection.Length-1;i++
ExpandedSubBlockStart.gifContractedSubBlock.gif            
dot.gif{
InBlock.gif                _FolderPath 
+= arrSection[i] + "/";
ExpandedSubBlockEnd.gif            }
InBlock.gif
InBlock.gif            
return _FolderPath;
ExpandedBlockEnd.gif        }

转载地址:http://irnzo.baihongyu.com/

你可能感兴趣的文章
Python 嵌套列表解析
查看>>
[GXOI/GZOI2019]旧词——树链剖分+线段树
查看>>
anroid 广播
查看>>
AJAX POST&跨域 解决方案 - CORS
查看>>
开篇,博客的申请理由
查看>>
Servlet 技术全总结 (已完成,不定期增加内容)
查看>>
[JSOI2008]星球大战starwar BZOJ1015
查看>>
centos 7 部署LDAP服务
查看>>
揭秘马云帝国内幕:马云的野心有多大
查看>>
iOS项目分层
查看>>
一个action读取另一个action里的session
查看>>
IntelliJ IDEA 注册码
查看>>
String字符串的截取
查看>>
DynamoDB Local for Desktop Development
查看>>
用javascript验证哥德巴赫猜想
查看>>
Shell编程-环境变量配置文件
查看>>
[Unity3d]DrawCall优化手记
查看>>
Struts2和Spring MVC的区别
查看>>
理解Javascript参数中的arguments对象
查看>>
p2:千行代码入门python
查看>>