首页 > 编程语言 >C#获取当前运行程序所在的目录详细讲解

C#获取当前运行程序所在的目录详细讲解

时间:2022-11-02 16:01:02浏览次数:50  
标签:C# 路径 System 应用程序 获取 BaseDirectory 讲解 目录

1.asp.net webform

  1.1 用“Request.PhysicalApplicationPath获取站点所在虚拟目录的物理路径,最后包含“\”;

2.c# winform中   2.1“Application.StartupPath”:获取当前应用程序所在目录的路径,最后不包含“\”;   2.2“Application.ExecutablePath ”:获取当前应用程序文件的路径,包含文件的名称;   2.3“AppDomain.CurrentDomain.BaseDirectory”:获取当前应用程序所在目录的路径,最后包含“\”;   2.4“System.Threading.Thread.GetDomain().BaseDirectory”:获取当前应用程序所在目录的路径,最后包含“\”;   2.5“Environment.CurrentDirectory”:获取当前应用程序的路径,最后不包含“\”;   2.6“System.IO.Directory.GetCurrentDirectory”:获取当前应用程序的路径,最后不包含“\”;   3.c# windows service服务中   3.1“AppDomain.CurrentDomain.BaseDirectory”或“System.Threading.Thread.GetDomain().BaseDirectory”;   3.2“Environment.CurrentDirectory”和“System.IO.Directory.GetCurrentDirectory”将得到“ system32”目录的路径;        注意:如果要使用“Application.StartupPath”或“Application.ExecutablePath ”        需要手动添加对“System.Windows.Forms.dll ”的引用,并在程序开头用“using   System.Windows.Forms”声明该引用;   4.在卸载程序获取系统安装的目录:   4.1System.Reflection.Assembly curPath = System.Reflection.Assembly.GetExecutingAssembly();               string path=curPath.Location;//得到安装程序类SetupLibrary文件的路径,获取这个文件路径所在的目录即得到安装程序的目录;  4.2System.Diagnostics.StackFrame f = new System.Diagnostics.StackFrame(1);               MethodBase mb = f.GetMethod();               System.Web.HttpContext.Current.Response.Write(mb.DeclaringType.ToString()); 获取调用类的信息,可以从父类知道子类的情况

标签:C#,路径,System,应用程序,获取,BaseDirectory,讲解,目录
From: https://www.cnblogs.com/struggle-cs/p/15172668.html

相关文章

  • 使用cpolar连接不同操作系统(windows与linux)(2)
     系列文章​​不同操作系统间如何进行TCP连接(Linux版)​​​​使用cpolar进行TCP临时连接(Linux版)​​​​使用cpolar进行TCP稳定连接(Linux版)​​​​使用cpolar连接不同操作......
  • 使用cpolar远程连接群晖NAS(升级固定链接1)
    在上篇文章中,我们为大家介绍了如何使用cpolar,建立起一条能够从公共互联网上连接到内网群晖系统的数据隧道。不过此时的数据隧道仍还没有固定下来,每隔24小时,这条数据隧道的端......
  • 建立私人知识网站 cpolar轻松做到2 (发布DokuWiki)
    在上篇文章中,我们向大家展示了如何在本地电脑上部署一个DokuWiki网站,并在本地电脑成功访问到这个网站。不过只在本地电脑和本地局域网内访问dokuwiki网站并不是我们的目标。......
  • Containerd部署
    containerd部署      containerd-1.6.9-linux-amd64.tar.gz 只包含containerdcri-containerd-cni-1.6.9-linux-amd64.tar.gz 包含containerd以及crirunc......
  • BAPI_OUTB_DELIVERY_CHANGE 删除DN
    """回滚数据删除DN,CLEAR:l_header_data_chg,l_header_control_chg.l_header_data_chg-deliv_numb=delivery.l_......
  • CF10E Greedy Change 题解
    http://codeforces.com/problemset/problem/10/E题意给出货币系统\(\{c_n\}\)满足\(c_1>c_2>\cdots>c_n=1\),请找到最小的\(x\)使贪心算法需要的货币数目比最优解多......
  • BAPI_CUSTOMERRETURN_CREATE 创建退货订单
    READTABLEs_headINDEX1.IFsy-subrc=0.ls_orders_h=s_head.***抬头CLEAR:ls_header,ls_headerx.ls_header-doc_type=s_head-auart."......
  • 如何配置Tomcat
    1.配置环境变量系统变量添加变量:变量名:CATALINA_HOME变量值:D:\apache-tomcat-8.5.57(就是你刚刚解压的那个文件夹路径,这里不需要bin)   2.在path中添加%CATALINA_H......
  • Centos下查看cpu核数
    1.概念物理CPU:实际Server中插槽上的CPU个数。物理cpu数量:可以数不重复的physicalid有几个。2.逻辑CPULinux用户对/proc/cpuinfo这个文件肯定不陌生.它是用来存......
  • <1> 线程池---ThreadPoolExecutor
    1importtime2fromconcurrent.futuresimportThreadPoolExecutor,as_completed,ProcessPoolExecutor345classSpider:67executor=Thre......