来源:http://blog.sina.com.cn/s/blog_a6fb6cc90102uy9k.html

Qt中操作系统环境,官方解释如下:

 QStringList QProcess::systemEnvironment() [static] 
 Returns the environment of the calling process as a list of key=value pairs. 
Example: QStringList environment = QProcess::systemEnvironment();
// environment = {"PATH=/usr/bin:/usr/local/bin",
// "USER=greg", "HOME=/home/gr
  返回的结果以类似键、值的形式存储。
  举例:获取系统盘下面的AppData目录
 QString appdataPath() { 
QStringList environmentList = QProcess::systemEnvironment();
QString appPath("");
foreach (QString environment, environmentList )
{
if (environment.startsWith("APPDATA=", Qt::CaseInsensitive))
{ appPath = environment.mid(QString("APPDATA=").length()); break;
}
}
return appPath ;
}
  更简单的可以通过:QString value = QProcessEnvironment::systemEnvironment().value("APPDATA");来获取相应的键对应的值。
  这样就可以像其它应用程序一样在自己的目录下放置自己所需的资源、配置文件。。。更多操作可参考:QProcess中setEnvironment、setProcessEnvironment等函数!
 
  如果不知道里面都有什么键值,最简单的方法就是全部输出,查看是否存在自己想要获取的内容!
 QStringList environmentList = QProcess::systemEnvironment(); 
foreach (QString environment, environmentList ) { qDebug() << environment; }
  测试结果如下:
"LOCALAPPDATA=C:\Users\wangl-d\AppData\Local"  
"LIB=D:\Program Files\Microsoft Visual Studio 10.0\VC\LIB;D:\Program Files\Microsoft Visual Studio 10.0\VC\ATLMFC\LIB;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib;"
"LOGONSERVER=\\GLODON-DC01"
"ASL.LOG=Destination=file"
"PATH=D:\Qt\Qt5.1.1\5.1.1\msvc2010\lib;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\Glodon\lib\Debug\X86;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\RichText\lib\Debug\X86;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\quazip\lib\Debug\X86;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\Glodon\lib\Debug\X86;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\RichText\lib\Debug\X86;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\quazip\lib\Debug\X86;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\VLD\lib\Win32;D:\Works\GAEA-PUBLIC\GGM\trunk\lib\VectorDrawEditor\lib\x86;D:\Qt\Qt5.1.1\5.1.1\msvc2010\bin;C:\Program Files (x86)\Microsoft F#\v4.0\;D:\Program Files\Microsoft Visual Studio 10.0\VSTSDB\Deploy;D:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\;D:\Program Files\Microsoft Visual Studio 10.0\VC\BIN;D:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Windows\Microsoft.NET\Framework\v3.5;D:\Program Files\Microsoft Visual Studio 10.0\VC\VCPackages;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files (x86)\HTML Help Workshop;D:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Performance Tools;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x64;D:\Program Files\TortoiseSVN\bin;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\Qtitan\lib;D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\VLD\bin\Win32;D:\Qt\Qt5.1.1\5.1.1\msvc2010\bin;D:\Glodon\GFY2.0_new\Controls\GrandResource\Lib;D:\Glodon\GFY2.0_new\Controls\GAEAResource\GCL\Bpl"
"COMMONPROGRAMFILES(X86)=C:\Program Files (x86)\Common Files"
"USERDOMAIN=GRANDSOFT"
"FRAMEWORKVERSION32=v4.0.30319"
"QTDIR=D:\Qt\Qt5.1.1\5.1.1\msvc2010"
"WINDOWS_TRACING_LOGFILE=C:\BVTBin\Tests\installpackage\csilogfile.log" "
FRAMEWORKDIR=C:\Windows\Microsoft.NET\Framework\"
"PROGRAMW6432=C:\Program Files"
"TMP=C:\Users\wangl-d\AppData\Local\Temp"
"QTITANDIR=D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource\ThirdPart\Qtitan"
"FRAMEWORKDIR32=C:\Windows\Microsoft.NET\Framework\"
"USERNAME=wangl-d"
"FP_NO_HOST_CHECK=NO"
"TEMP=C:\Users\wangl-d\AppData\Local\Temp"
"FRAMEWORKVERSION=v4.0.30319"
"VCINSTALLDIR=D:\Program Files\Microsoft Visual Studio 10.0\VC\"
"PROMPT=$P$G"
"VSEDEFLOGDIR=C:\ProgramData\McAfee\DesktopProtection"
"HOMEPATH=\Users\wangl-d"
"WINDOWS_TRACING_FLAGS=3"
"GLDRS=D:\Works\GAEA-PUBLIC\GJH\trunk\Imports\GlodonResource"
"NUMBER_OF_PROCESSORS=4"
"VSINSTALLDIR=D:\Program Files\Microsoft Visual Studio 10.0\"
"COMSPEC=C:\Windows\system32\cmd.exe"
"PROGRAMFILES=C:\Program Files (x86)"
"SYSTEMDRIVE=C:"
"FSHARPINSTALLDIR=C:\Program Files (x86)\Microsoft F#\v4.0\"
"PROCESSOR_REVISION=3a09"
"PROCESSOR_LEVEL=6"
"WINDOWSSDKDIR=C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\"
"HOMEDRIVE=C:"
"DEVENVDIR=D:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\"
"COMPUTERNAME=WANGL-D-PC"
"PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC"
"APPDATA=C:\Users\wangl-d\AppData\Roaming"
"PROGRAMDATA=C:\ProgramData"
"PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 58 Stepping 9, GenuineIntel"
"PUBLIC=C:\Users\Public"
"COMMONPROGRAMFILES=C:\Program Files (x86)\Common Files"
"OS=Windows_NT"
"FRAMEWORK35VERSION=v3.5"
"DEFLOGDIR=C:\ProgramData\McAfee\DesktopProtection"
"LIBPATH=C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Windows\Microsoft.NET\Framework\v3.5;D:\Program Files\Microsoft Visual Studio 10.0\VC\LIB;D:\Program Files\Microsoft Visual Studio 10.0\VC\ATLMFC\LIB;"
"BDSCOMMONDIR=C:\Users\Public\Documents\RAD Studio\5.0"
"VS100COMNTOOLS=D:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools\"
"COMMONPROGRAMW6432=C:\Program Files\Common Files"
"USERPROFILE=C:\Users\wangl-d"
"WINDIR=C:\Windows"
"PROGRAMFILES(X86)=C:\Program Files (x86)"
"PSMODULEPATH=C:\Windows\system32\WindowsPowerShell\v1.0\Modules\"
"PROCESSOR_ARCHITECTURE=x86"
"GRS=D:\Glodon\GFY2.0_new\Controls\GrandResource"
"PROCESSOR_ARCHITEW6432=AMD64"
"SESSIONNAME=Console"
"SYSTEMROOT=C:\Windows"
"USERDNSDOMAIN=GRANDSOFT.COM.CN"
"ALLUSERSPROFILE=C:\ProgramData"
"INCLUDE=D:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE;D:\Program Files\Microsoft Visual Studio 10.0\VC\ATLMFC\INCLUDE;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include;"

以上环境变量具体都是什么意思,我就不解释了,见名知义,大家肯定都比我聪明,O(∩_∩)O~。。。

Qt之操作系统环境的更多相关文章

  1. Qt QAxObject操作excel文件过程总结(转):

    正好同事问道Qt下操作excel. 转自:http://blog.csdn.net/a156392343/article/details/48092515 配制方面: 1.确保Excel软件在本地服务 ...

  2. 2.大约QT数据库操作,简单的数据库连接操作,增删改查数据库,QSqlTableModel和QTableView,事务性操作,大约QItemDelegate 代理

     Linux下的qt安装,命令时:sudoapt-get install qt-sdk 安装mysql数据库,安装方法參考博客:http://blog.csdn.net/tototuzuoquan ...

  3. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 1.操作系统环境配置

    1.OpenStack示例的架构介绍 1.1 各节点介绍 (1)控制节点(controller)控制节点(controller)上运行身份服务,镜像服务,计算节点管理,网络管理,各种网络代理和仪表板. ...

  4. 数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID)

    数据库名(DB_NAME).实例名(Instance_name).以及操作系统环境变量(ORACLE_SID) 在ORACLE7.8数据库中只有数据库名(db_name)和数据库实例名(instanc ...

  5. Qt之操作数据库(SQLite)实例

    QtSql模块提供了与平台以及数据库种类无关的访问SQL数据库的接口,这个接口由利用Qt的模型视图结构将数据库与用户界面集成的一套类来支持.QSqlDatabase对象象征了数据库的关联.Qt使用驱动 ...

  6. .NET Core程序中,如何获取和设置操作系统环境变量的值

    有时候我们在.NET Core程序中需要获取和设置操作系统环境变量的值.本文演示如何使用Environment.GetEnvironmentVariable和Environment.SetEnviro ...

  7. 【RAC】 RAC For W2K8R2 安装--操作系统环境配置 (二)

    [RAC] RAC For W2K8R2 安装--操作系统环境配置 (二) 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可 ...

  8. 大数据Hadoop平台安装及Linux操作系统环境配置

    配置 Linux 系统基础环境 查看服务器的IP地址 设置服务器的主机名称 hostnamectl set-hostname hadoop hostname可查看 绑定主机名与IP 地址 vim /e ...

  9. Qt之操作数据库(SQLite)

    SQLite 简介 SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需 ...

随机推荐

  1. push类型消息中间件-消息订阅者(一)

    1.订阅者的声明方式 我们以spring组件化的方式,声明一个消息订阅者,对于消息订阅者关心的主要有: topic: 一级消息类型(又名消息主题).如TRADE 消息类型:二级消息类型,区别同一Top ...

  2. linux卸载rpm包

    先查找要卸载的rpm包:比如cpp: #rpm -qa | grep cpp #rpm -e cpp-2.333x.x 如果提示有依赖,执行: #rpm -e cpp-2222 --nodeps

  3. 关于 HSSF 和 XSSF 功能的开发者入门指南 (Apache POI 操作 Excel)

    关于 HSSF 和 XSSF 功能的开发者入门指南 笔者深夜无眠,特此对本文翻译一部分,未完成部分待后续更新 本文源文地址 意欲使用 HSSF 和 XSSF 功能快熟读写电子表格?那本文就是为你而写的 ...

  4. Java IO 转换流 字节转字符流

    Java IO 转换流 字节转字符流 @author ixenos 字节流 输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| Fil ...

  5. navicat 连接远程mysql

    01putty中session---远程地址(程序访问的域名) ,端口22--load加载进来 02SSH--Auth-Tunnels(隧道)-- putty端口映射SSH--Auth-Tunnels ...

  6. 2、Web应用程序中的安全向量 -- CSRF/XSRF(跨站请求伪造)

    CSRF的概念可以分为两类:XSS和混淆代理. 混淆代理中的"代理"是指用户的浏览器.CSRF是基于浏览器的工作方式运作的.用户登录到一个站点后,用户的信息将会存储在cookie中 ...

  7. 二维小波包重构wprec2\wprcoef

    clc,clear all,close all; load woman; t=wpdec2(X,2,'haar');%小波包2层分解 r_X=wprec2(t);%重构小波包 r_X10=wprcoe ...

  8. Android 切横竖屏时走的生命周期方法?222

    第一种情况: 不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次 第二种情况: 设置Activity的androi ...

  9. Windows系统新建gitignore文件出现“必须键入文件名”错误的解决办法

    今天打算把本地的项目用git推送到github上去,但是有的信息我又不想把它加入到版本控制系统中去,例如.classpath文件和.class文件等等,这个时候我就想到了使用.gitignore文件把 ...

  10. linux下svn用法

    linux下svn的一些常用命令: checkout代码到当前目录: svn co svn://192.168.22.23/project  ./ swich 切换分支: 先查看当前工作副本:svn ...