Delphi code

//譬如 %WINDIR% 是表示系统目录的系统变量, 可以这样获取:
var
s: string;
begin
s := GetEnvironmentVariable('WINDIR');
ShowMessage(s); {C:\WINDOWS}
end;

一些系统目录变量列表:

变量 描述
%WINDIR% {系统目录 - C:\WINDOWS}
%SYSTEMROOT% {系统目录 - C:\WINDOWS}
%SYSTEMDRIVE% {系统根目录 - C:}
%HOMEDRIVE% {当前用户根目录 - C:}
%USERPROFILE% {当前用户目录 - C:\Documents and Settings\wy}
%HOMEPATH% {当前用户路径 - \Documents and Settings\wy}
%TMP% {当前用户临时文件夹 - C:\DOCUME~1\wy\LOCALS~1\Temp}
%TEMP% {当前用户临时文件夹 - C:\DOCUME~1\wy\LOCALS~1\Temp}
%APPDATA% {当前用户数据文件夹 - C:\Documents and Settings\wy\Application Data}
%PROGRAMFILES% {程序默认安装目录 - C:\Program Files}
%COMMONPROGRAMFILES% {文件通用目录 - C:\Program Files\Common Files}
%USERNAME% {当前用户名 - wy}
%ALLUSERSPROFILE% {所有用户文件目录 - C:\Documents and Settings\All Users}
%OS% {操作系统名 - Windows_NT}
%COMPUTERNAME% {计算机名 - IBM-B63851E95C9}
%NUMBER_OF_PROCESSORS% {处理器个数 - 1}
%PROCESSOR_ARCHITECTURE% {处理器芯片架构 - x86}
%PROCESSOR_LEVEL% {处理器型号 - 6}
%PROCESSOR_REVISION% {处理器修订号 - 0905}
%USERDOMAIN% {包含用户帐号的域 - IBM-B63851E95C9}
%COMSPEC% {C:\WINDOWS\system32\cmd.exe}
%PATHEXT% {执行文件类型 - .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.pyo;.pyc;.py;.pyw}
%PATH% {搜索路径}

另外, 可以利用 .. 到上层目录, 如:

Delphi code
var
s: string;
begin
s := GetCurrentDir;
ShowMessage(s); {C:\Documents and Settings\wy\My Documents\RAD Studio\Projects} SetCurrentDir('..');
s := GetCurrentDir;
ShowMessage(s); {C:\Documents and Settings\wy\My Documents\RAD Studio} SetCurrentDir('..\..');
s := GetCurrentDir;
ShowMessage(s); {C:\Documents and Settings\wy}
end;

【转】Delphi利用系统环境变量获取常用系统目录的更多相关文章

  1. SpringBoot系列——利用系统环境变量与配置文件的分支选择实现“智能部署”

    前言 通过之前的博客:SpringBoot系列——jar包与war包的部署,我们已经知道了如果实现项目的简单部署,但项目部署的时候最烦的是什么?修改成发布环境对应的配置!数据库连接地址.Eureka注 ...

  2. Delphi 解析系统环境变量

    // http://www.outofmemory.cn function ExpandEnvironment(const strValue: string): string; var chrResu ...

  3. C#中如何获取系统环境变量等

    C#中获取系统环境变量需要用到Environment 类. 其中提供了有关当前环境和平台的信息以及操作它们的方法.该类不能被继承 以下代码得到%systemdrive%的值,即“C:” string ...

  4. GetEnvironmentVariable 获取常用系统变量(转)

    源:GetEnvironmentVariable 获取常用系统变量 //譬如 WINDIR 表示系统目录系统变量, 以这样获: var s:string; begin s:=GetEnvironmen ...

  5. JAVA 获取系统环境变量

    分享代码: package com.base.entity; import java.io.Serializable; import java.util.Comparator; /** * 系统环境变 ...

  6. C#中如何获取系统环境变量

    原文:C#中如何获取系统环境变量 C#中获取系统环境变量需要用到Environment Class.其中提供了有关当前环境和平台的信息以及操作它们的方法.该类不能被继承. 以下代码得到%systemd ...

  7. Springboot yml获取系统环境变量的值

    注意,这里说的是获取系统环境变量的值,譬如Windows里配置的JAVA_HOME之类的,可以直接在Springboot的配置文件中获取. 我们经常使用一些docker管理平台,如DaoCloud.r ...

  8. [置顶] getenv、setenv函数(获取和设置系统环境变量) 与 环境变量

    1.getenv() 函数名: getenv 功 能: 从环境中取字符串,获取环境变量的值 头文件: stdlib.h 用 法:char *getenv(char *envvar); 函数说明:get ...

  9. Java获取系统环境变量(System Environment Variable)和系统属性(System Properties)以及启动参数的方法

    系统环境变量(System Environment Variable): 在Linux下使用export $ENV=123指定的值.获取的方式如下: Map<String,String> ...

随机推荐

  1. JS-007-富文本域操作

    在日常 web 编写过程中,富文本域几乎成为了一个网站不可页面元素,同时,其也有着各种各样的实现方式,网络上也存在着各种各样的集成插件可供引用.此文以 js 获取.修改 163 邮箱写邮件时的邮件内容 ...

  2. Asp.net MVC中Route的理解

    在Asp.net MVC中,对于一个请求,是通过路由找到对应的Controller类中的对应Action,并与model进行交互,最后返回到view. 就是说Asp.net MVC是用Route来定义 ...

  3. ant 执行到javac时运行中止,怎么办?

    今天下午我用ant,明明都能打出target.后来改了点代码就不行了,执行到compile的javac时运行中止,真是见鬼了. 在ant构建文件上右击,点击"run as"-> ...

  4. MSYS2 安装和配置

    MSYS2 安装和配置 msys2 和 cygwin 类似,提供了一个类 Linux 的 shell 环境和工具链,同时还使用了 arch linux 的 pacman 管理软件包,比 cygwin ...

  5. ASP.NET Highcharts图表

    js 图表代码,如下: charts[i] = new Highcharts.Chart({ chart: { backgroundColor: { linearGradient: [0, 0, 50 ...

  6. MFC和Direct3D9一起使用

    第一步:新建MFC单文档项目,向导如下: 第二步:添加引用,在项目属性的VC++目录中修改Include和lib文件夹. 第三步:在stdafx.h文件Include部分的最后添加如下引用. #inc ...

  7. MFC对话框Dialog控件处理程序handler因为public修饰符导致无法访问

    比如说你的Dialog有一个Button名为Confirm,对应IDC_CONFIRM,处理程序handler为OnConfirm 那么OnConfirm必须是protected属性,如果是publi ...

  8. SWIFT 闭包的简单使用

    import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: ...

  9. 当As3遇见Swift(二)

    字符串:String 都是用String来表示,都是值类型,在传递过程中都会进行拷贝. 计算字符数量 As3: str.length Swift: countElements(str) 数组:Arra ...

  10. G面经Prepare: Valid Preorder traversal serialized String

    求问下各位大神,怎么判断一个按照Preorder traversal serialized的binary tree的序列是否正确呢?不能deserialize成树比如 A) 9 3 4 # # 1 # ...