include "stdafx.h"

#include <Windows.h>
#include <iostream>
#pragma warning(disable:4996)
int _tmain(int argc, _TCHAR* argv[])
{
char appPath[MAX_PATH]; GetEnvironmentVariableA("%%TEMP%%", appPath, );
//取不到
GetEnvironmentVariableA("%TEMP%", appPath, );
//取不到
GetEnvironmentVariableA("TEMP", appPath, );
//取到了 char* psz = NULL;
psz = getenv("%%TEMP%%");
//取不到
psz = getenv("%TEMP%");
//取不到
psz = getenv("TEMP");
//取到了 char computerName[MAX_PATH];
DWORD bufferSize = sizeof(computerName);
//环境变量相关api,调用成功
//@err,hr 0x000000cb 操作系统找不到已输入的环境选项
//内部引用了环境变量
GetComputerNameA(computerName, &bufferSize);
TCHAR appPath[MAX_PATH];
char* psz = getenv("TEMP");
//%%TEMP%%\\%s_p.ax
/*
GetEnvironmentVariable(_T("TEMP"), appPath, MAX_PATH);
appPath[0] = 0; //结果正常 "C:\Users\vv\AppData\Local\Temp"
GetEnvironmentVariable(_T("ProgramFiles"), appPath, MAX_PATH);
appPath[0] = 0; //结果正常 "C:\Program Files"
ExpandEnvironmentStrings(_T("ProgramFiles"), appPath, MAX_PATH);
appPath[0] = 0; //结果取不到, ProgramFiles
*/
ExpandEnvironmentStrings(_T("%%ProgramFiles%%"), appPath, MAX_PATH);
appPath[] = ; //结果 取出结果套了一层符号 "%C:\Program Files%"
ExpandEnvironmentStrings(_T("%%ProgramFiles%%\\xxx_.xx"), appPath, MAX_PATH);
appPath[] = ; //结果 取出结果套了一层符号 "%C:\Program Files%\\xxx"
ExpandEnvironmentStrings(_T("%ProgramFiles%\\xxx"), appPath, MAX_PATH);
//结果正常 "C:\Program Files"
printf("%s\r\n",appPath); wchar_t buffer[MAX_PATH];
DWORD code = GetEnvironmentVariable(L"WINDIR", buffer, MAX_PATH);
std::wcout << L"WINDIR:\t\t\t" << buffer << std::endl; GetEnvironmentVariable(L"SYSTEMROOT", buffer, MAX_PATH);
std::wcout << L"SYSTEMROOT:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"SYSTEMDRIVE", buffer, MAX_PATH);
std::wcout << L"SYSTEMDRIVE:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"HOMEDRIVE", buffer, MAX_PATH);
std::wcout << L"HOMEDRIVE:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"USERPROFILE", buffer, MAX_PATH);
std::wcout << L"USERPROFILE:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"HOMEPATH", buffer, MAX_PATH);
std::wcout << L"HOMEPATH:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"TMP", buffer, MAX_PATH);
std::wcout << L"TMP:\t\t\t" << buffer << std::endl; GetEnvironmentVariable(L"TEMP", buffer, MAX_PATH);
std::wcout << L"TEMP:\t\t\t" << buffer << std::endl; GetEnvironmentVariable(L"APPDATA", buffer, MAX_PATH);
std::wcout << L"APPDATA:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"PROGRAMFILES", buffer, MAX_PATH);
std::wcout << L"PROGRAMFILES:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"COMMONPROGRAMFILES", buffer, MAX_PATH);
std::wcout << L"COMMONPROGRAMFILES:\t" << buffer << std::endl; GetEnvironmentVariable(L"USERNAME", buffer, MAX_PATH);
std::wcout << L"USERNAME:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"ALLUSERSPROFILE", buffer, MAX_PATH);
std::wcout << L"ALLUSERSPROFILE:\t" << buffer << std::endl; GetEnvironmentVariable(L"OS", buffer, MAX_PATH);
std::wcout << L"OS:\t\t\t" << buffer << std::endl; GetEnvironmentVariable(L"COMPUTERNAME", buffer, MAX_PATH);
std::wcout << L"COMPUTERNAME:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"NUMBER_OF_PROCESSORS", buffer, MAX_PATH);
std::wcout << L"NUMBER_OF_PROCESSORS:\t" << buffer << std::endl; GetEnvironmentVariable(L"PROCESSOR_ARCHITECTURE", buffer, MAX_PATH);
std::wcout << L"PROCESSOR_ARCHITECTURE:\t" << buffer << std::endl; GetEnvironmentVariable(L"PROCESSOR_LEVEL", buffer, MAX_PATH);
std::wcout << L"PROCESSOR_LEVEL:\t" << buffer << std::endl; GetEnvironmentVariable(L"PROCESSOR_REVISION", buffer, MAX_PATH);
std::wcout << L"PROCESSOR_REVISION:\t" << buffer << std::endl; GetEnvironmentVariable(L"USERDOMAIN", buffer, MAX_PATH);
std::wcout << L"USERDOMAIN:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"COMSPEC", buffer, MAX_PATH);
std::wcout << L"COMSPEC:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"PATHEXT", buffer, MAX_PATH);
std::wcout << L"PATHEXT:\t\t" << buffer << std::endl; GetEnvironmentVariable(L"PATH", buffer, MAX_PATH);
std::wcout << L"PATH:\t\t" << buffer << std::endl; system("pause");
return ;
}

获取环境变量,0x000000cb 操作系统找不到已输入的环境选项的更多相关文章

  1. Java环境变量的操作系统原理[浅谈]

    从知乎摘抄过来的文章,图没有复制过来,当作自己的笔记.其中我认为重要的部分(涉及操作系统的)已经加粗了. 本文源自:你应该知道的 Windows 环境变量 - 麓山南人的文章 - 知乎 https:/ ...

  2. 环境变量、block、修饰符:block对环境变量的引用和修改需要通过修饰符来限定

    环境变量.block.修饰符:block对环境变量的引用和修改需要通过修饰符来限定. http://www.cnblogs.com/fengmin/p/5816580.html - (NSUInteg ...

  3. java环境变量详解---找不到或无法加载主类

    默认安装在C:\ProgramFiles\Java\jdk1.7.0目录下环境变量配置为PATH=.;%JAVA_HOME%\binCLASSPATH=.;%JAVA_HOME%\lib\dt.jar ...

  4. Linux:修改Ubuntu环境变量后bash找不到

    1.问题显示 修改环境变量,导致命令全部失效  2.解决办法 #使用备份bin export PATH=/usr/bin:/bin  之后使用命令就可以了. 3.找到修改的环境变量 一般修改的环境变量 ...

  5. MinGW安装与环境变量配置和Sublime Text 2搭建C++编译环境

    MinGW安装与环境变量配置 从http://sourceforge.net/projects/mingw/下载MinGW,安装到D:\MinGW.工具集选择安装(之后还可以进行安装卸载):至少需要安 ...

  6. postman设置环境变量,实现一套接口根据选择的环境去请求不同的url

    一个系统,有本地,开发,测试,生产等不同的环境,如果写不同的url配置多套会比较麻烦,可以设置不同的环境实现不同的url之间的切换.配置之后如下: 第一步: 第二步: 添加环境变量 ps::不同的环境 ...

  7. Linux中修改环境变量及生效方法(永久、临时)环境变量查看

    参考link:https://blog.csdn.net/u011630575/article/details/49839893 在项目中有一次帮忙组里搭环境时遇见了这部分的相关操作,记录一下.

  8. 怎样在Ubuntu中设置环境变量

    首先启动终端. 单击屏幕左上角的Ubuntu图标,在弹出的窗口中点击搜索栏,输入"terminal", 稍等片刻,终端就会赫然在目!二话不说,直接点击!     然后打开环境设置文 ...

  9. Linux 操作系统下的环境变量设置

    Linux下的环境变量设置 by:授客 QQ:1033553122 1.  问题描述 linux输入命令时经常会出现提示:xxx:Command not found 2.  原因分析 Command ...

随机推荐

  1. #010 全年级C语言开始统一刷题了,能否坚持下去?

    不知道这是咋回事吧,这个系统挺不好使得,出现了一个又一个的问题. 使用过程中做题的那个系统自己就崩了,刷新后那道题得了零分. 前面的几道题难度系数也不小,对于我这个新手来说,但是这个系统太坑了.他明码 ...

  2. JavaScript数据类型之数字类型

    引言 JavaScript不区分整数值和浮点数值,全部使用浮点数值表示.当一个数字直接出现在JavaScript程序中,我们称之为数字直接量(numeric litertal).JavaScript支 ...

  3. 别老扯什么hadoop,你的数据根本不够大

    本文原名“Don't use Hadoop when your data isn't that big ”,出自有着多年从业经验的数据科学家Chris Stucchio,纽约大学柯朗研究所博士后,搞过 ...

  4. linux命令应用之一

    某个目录下有两个文件a.txt和b.txt.文件格式为(ip username),例如: a.txt 127.0.0.1 zhangsan127.0.0.1 wangxiao127.0.0.2 lis ...

  5. linux crontab定时器

    1.查看linux是否有crontab指令  如果没有安装crontab指令 yum install -y vixie-cron yum -y install crontabs 2.设置开机自启 ch ...

  6. P1563 玩具谜题(简单模拟)

    就是一个简单模拟 #include<iostream> #include<string> using namespace std; ; int in[maxn], x[maxn ...

  7. P1451 求细胞数量(广搜)

    题意:就是0把是所有细胞圈起来了.而被圈起来的是所有数字全部为一个细胞问有多少个这样的细胞.(mmp,我读半天题) 思路:广搜索.就是,0的话就不放入了,不为0的话,就进入队列,然后,再看它的4个方向 ...

  8. OpenCV遍历彩色图像、灰度图像的像素值方法

    https://blog.csdn.net/mooneve/article/details/53001677 应用:将彩色图像转为灰度图像输出 方法一 使用ptr函数和指针 (高效) void mai ...

  9. (二 -3-1) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列 实战

    #本片教程介绍了具体如何实现天猫精灵控制一个灯. 前提: HASS平台 你已经搭建一个可以在公网IP访问到的HASS平台--- 我用的是租了阿里云服务器,买了个域名,ubuntu1604系统 你已经搭 ...

  10. 14 python初学(高阶函数 递归函数 内置函数)

    高阶函数:1.  函数名是一个变量,函数名可以进行赋值 2. 函数名可以作为函数参数,还可以作为函数返回值(函数名称作为函数返回值时返回的是:函数的地址:print 这个返回值的调用相当于执行这个函数 ...