获取环境变量,0x000000cb 操作系统找不到已输入的环境选项
- 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 操作系统找不到已输入的环境选项的更多相关文章
- Java环境变量的操作系统原理[浅谈]
从知乎摘抄过来的文章,图没有复制过来,当作自己的笔记.其中我认为重要的部分(涉及操作系统的)已经加粗了. 本文源自:你应该知道的 Windows 环境变量 - 麓山南人的文章 - 知乎 https:/ ...
- 环境变量、block、修饰符:block对环境变量的引用和修改需要通过修饰符来限定
环境变量.block.修饰符:block对环境变量的引用和修改需要通过修饰符来限定. http://www.cnblogs.com/fengmin/p/5816580.html - (NSUInteg ...
- java环境变量详解---找不到或无法加载主类
默认安装在C:\ProgramFiles\Java\jdk1.7.0目录下环境变量配置为PATH=.;%JAVA_HOME%\binCLASSPATH=.;%JAVA_HOME%\lib\dt.jar ...
- Linux:修改Ubuntu环境变量后bash找不到
1.问题显示 修改环境变量,导致命令全部失效 2.解决办法 #使用备份bin export PATH=/usr/bin:/bin 之后使用命令就可以了. 3.找到修改的环境变量 一般修改的环境变量 ...
- MinGW安装与环境变量配置和Sublime Text 2搭建C++编译环境
MinGW安装与环境变量配置 从http://sourceforge.net/projects/mingw/下载MinGW,安装到D:\MinGW.工具集选择安装(之后还可以进行安装卸载):至少需要安 ...
- postman设置环境变量,实现一套接口根据选择的环境去请求不同的url
一个系统,有本地,开发,测试,生产等不同的环境,如果写不同的url配置多套会比较麻烦,可以设置不同的环境实现不同的url之间的切换.配置之后如下: 第一步: 第二步: 添加环境变量 ps::不同的环境 ...
- Linux中修改环境变量及生效方法(永久、临时)环境变量查看
参考link:https://blog.csdn.net/u011630575/article/details/49839893 在项目中有一次帮忙组里搭环境时遇见了这部分的相关操作,记录一下.
- 怎样在Ubuntu中设置环境变量
首先启动终端. 单击屏幕左上角的Ubuntu图标,在弹出的窗口中点击搜索栏,输入"terminal", 稍等片刻,终端就会赫然在目!二话不说,直接点击! 然后打开环境设置文 ...
- Linux 操作系统下的环境变量设置
Linux下的环境变量设置 by:授客 QQ:1033553122 1. 问题描述 linux输入命令时经常会出现提示:xxx:Command not found 2. 原因分析 Command ...
随机推荐
- 20个必不可少的Python库
转载:http://www.python123.org/tutorials/58b41f2a28c8f30100bd41dc 读者们好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之 ...
- 关于Three.js基本几何形状
一.有关球体SphereGeometry构造函数参数说明 SphereGeometry(radius, widthSegments, heightSegments, phiStart, phiLeng ...
- 《Java大学教程》—第8章 通过继承扩展类
8.2 继承(inheritance):继承是指在类之间共享属性和方法.继承关系是一种层次关系.在继承关系中位于顶部的类称为超类(或基类),位于下面的类称为子类(或派生类).类型转换(type ...
- ionic app开发遇到的问题
:processDebugResources FAILED FAILURE: Build failed with an exception. * What went wrong: Execution ...
- 英语进阶系列-A01-再别康桥
每天必读知识 音标 发音网页 人称代词与物主代词 时态 朗读50遍词汇系列1 Number word 1 be 2 have 3 get 4 give 5 take 诗歌欣赏 [原诗] [英文版] 再 ...
- python mysql数据库操作
一.pymysql 模块安装(本文博客推荐:https://www.cnblogs.com/clschao/articles/10023248.html) pip3 install pymysql 二 ...
- c# base64编码解码
1.base64转pdf
- Request Body可以反复读取的方法
org.springframework.web.filter.HiddenHttpMethodFilter:过滤器已经读取流了,因此想频繁读取流的话,自定义Filter必须在org.springfra ...
- JS学习实践(1) JavaScript 修改图像灯泡
修改灯泡 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <titl ...
- 机器学习三剑客之Pandas中DataFrame基本操作
Pandas 是基于Numpy 的一种工具,是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具.Pandas提供了大量能使我们快速便捷 ...