在别的开发语言中有很多方法可以调用出当前运行模块的路径(exe比较简单,这里指dll之类的模块)。

C#中是如何做的呢?比如需要访问该模块同一路径下的配置文件或者其它文件,下面是使用的方法:

        protected string GetAssemblyPath()
        {
            string assemblypath = string.Empty;
            assemblypath = System.Reflection.Assembly.GetExecutingAssembly().CodeBase;
            //// 8是【http://www.cnblogs.com/moon2bird/admin/file:///】的长度,要去掉
            assemblypath = assemblypath.Substring(8, assemblypath.Length - 8);
            assemblypath = Path.GetDirectoryName(assemblypath);
            return assemblypath;
        }

直接使用这个函数即可。System.Reflection.Assembly.GetExecutingAssembly().CodeBase的返回值开头是http://www.cnblogs.com/moon2bird/admin/file:///,所以要去掉。

posted on 2009-01-22 13:19  一云  阅读(922)  评论(0编辑  收藏  举报