c# - - - Application.StartupPath(程序安装目录)和Environment.CurrentDirectory(程序工作目录)

Application.StartupPath

应用程序的安装目录,不会改变。

  1. 在C:\Users\Administrator\source\repos\ConsoleApp6\bin\Debug目录中,运行ConsoleApp6.exe。

    安装目录为:C:\Users\Administrator\source\repos\ConsoleApp6\bin\Debug

  2. 在C:\Users\Administrator\source\repos\ConsoleApp6目录中,运行bin\Debug\ConsoleApp6.exe

    安装目录为:C:\Users\Administrator\source\repos\ConsoleApp6\bin\Debug

Environment.CurrentDirectory

应用程序的工作目录,根据程序工作的目录进行改变。

  1. 在C:\Users\Administrator\source\repos\ConsoleApp6\bin\Debug目录中,运行ConsoleApp6.exe。

    工作目录为:C:\Users\Administrator\source\repos\ConsoleApp6\bin\Debug

  2. 在C:\Users\Administrator\source\repos\ConsoleApp6目录中,运行bin\Debug\ConsoleApp6.exe

    工作目录为:C:\Users\Administrator\source\repos\ConsoleApp6

代码

csharp 复制代码
static void Main(string[] args)
{
    Console.WriteLine("Application.StartupPath:" + Application.StartupPath);

    Console.WriteLine("Environment.CurrentDirectory:" + Environment.CurrentDirectory);

    Console.Read();
}

效果

Application.StartupPath 程序安装目录始终不会改变。

Environment.CurrentDirectory 程序工作目录会改变为程序工作所在的目录。

相关推荐
AI人工智能+电脑小能手19 分钟前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
QFIUNE28 分钟前
CD-HIT 详解:序列去冗余、安装使用与聚类结果解析
linux·服务器·机器学习·数据挖掘·conda·聚类
张健11564096481 小时前
临界区和同一线程上锁
java·开发语言·jvm
头发够用的程序员1 小时前
C++和Python面试经典算法汇总(一)
开发语言·c++·python·算法·容器·面试
夜猫逐梦1 小时前
【逆向经验】一篇文章讲透为什么CE搜不到Python游戏的内存值
开发语言·python·游戏
月昤昽2 小时前
autocad二次开发 3.阵列与面域
c#·二次开发·autocad二次开发
勇闯逆流河2 小时前
【Linux】linux进程控制(进程池的详解与实现)
linux·运维·服务器
SilentSamsara2 小时前
闭包的本质:Python 如何捕获自由变量
开发语言·python·青少年编程·pycharm
十五年专注C++开发2 小时前
浅谈LLVM
开发语言·c++·qt·clang·llvm
zhangfeng11332 小时前
部署到服务器上 宝塔系统 使用宝塔在线编辑器 FTP 批量上传 Git 部署 打包上传 codebudyy 编程程序开发
服务器·git·编辑器