输出进程相关联的环境变量信息(使用GetEnvironmentStrings取得信息,然后使用StringCchCopyN和StringCchPrintf保证字符串不会越界)
- void DumpEnvironmentStrings()
 - {
 - #define MAX_ENVIRONMENT_NAME_LENGTH (128)
 - #define MAX_ENVIRONMENT_VALUE_LENGTH (1024)
 - LPTSTR lpszEnvString = GetEnvironmentStrings();
 - if(NULL == lpszEnvString)
 - {
 - return ;
 - }
 - TCHAR* pEnvBlock = lpszEnvString;
 - const TCHAR szToken = _T('=');
 - TCHAR szName[MAX_ENVIRONMENT_NAME_LENGTH] = {0};
 - TCHAR szValue[MAX_ENVIRONMENT_VALUE_LENGTH] = {0};
 - while('\0' != *pEnvBlock)
 - {
 - if(szToken == *pEnvBlock)
 - {
 - pEnvBlock += _tcslen(pEnvBlock) + 1;
 - continue;
 - }
 - TCHAR* pToken = _tcschr(pEnvBlock, szToken);
 - if(NULL == pToken)
 - {
 - break;
 - }
 - memset(szName, 0, sizeof(szName));
 - memset(szValue, 0, sizeof(szValue));
 - StringCchCopyN(szName, _countof(szName), pEnvBlock, pToken - pEnvBlock);
 - StringCchPrintf(szValue, _countof(szValue), _T("%s"), pToken + 1);
 - _tprintf(_T("%s : %s\r\n\r\n"), szName, szValue);
 - pEnvBlock += _tcslen(pEnvBlock) + 1;
 - }
 - FreeEnvironmentStrings(lpszEnvString);
 - lpszEnvString = NULL;
 - }
 - // 测试代码
 - #include "stdafx.h"
 - #include <Windows.h>
 - #include <strsafe.h>
 - int _tmain(int argc, _TCHAR* argv[])
 - {
 - DumpEnvironmentStrings();
 - return 0;
 - }
 
输出进程相关联的环境变量信息(使用GetEnvironmentStrings取得信息,然后使用StringCchCopyN和StringCchPrintf保证字符串不会越界)的更多相关文章
- [Shell]Bash变量:环境变量的配置文件和登录信息
		
----------------------------------------------------------------------------------------- 只有把环境变量放入配 ...
 - 使用Linux环境变量教程
		
什么是环境变量? bash shell用一个叫作环境变量( environment variable)的特性来存储有关shell会话和工作环境的信息(这也是它们被称作环境变量的原因).这项特性允许你在 ...
 - Ubuntu 18.04安装JDK并配置环境变量
		
1.官网下载jdk 下载链接 http://www.oracle.com/technetwork/java/javase/downloads/index.html 可以根据自己的系统进行下载 2.进行 ...
 - Windows环境安装tesseract-ocr 4.00并配置环境变量
		
最近要做文字识别,不让直接用别人的接口,所以只能尝试去用开源的类库.tesseract-ocr是惠普公司开源的一个文字识别项目,通过它可以快速搭建图文识别系统,帮助我们开发出能识别图片的ocr系统.因 ...
 - Linux——环境变量的文件及配置
		
环境变量是包含关于系统及当前登录用户的环境信息的字符串,一些软件程序使用此信息确定在何处放置文件(如临时文件). 一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker ...
 - readonly&&declare&&unset &&export&&env环境变量
		
readonly命令用于定义只读shell变量和shell函数.readonly命令的选项-p可以输出显示系统中所有定义的只读变量. 选项 -f:定义只读函数: -a:定义只读数组变量: -p:显示系 ...
 - JAVA JDK安装及path环境变量配置
		
JDK安装 JVM :JAVA虚拟机 JRE :java运行环境=JVM+核心类库 JDK :JAVA开发工具包=JRE+java开发工具 java开发工具:编译工具(javac.exe) . 运行 ...
 - Linux学习,path,环境变量的配置
		
方法一: 1.查看当前环境变量配置的所与信息 echo $PATH 注意: echo是输出的意思 加$表示它是一个变量 2.配置环境命令 PATH="$PATH":comdir 注 ...
 - windows_环境变量
		
今天在windows下安装了openSSH,就想在windows下也添加一个服务器地址的环境变量,添加是会了,引用却不会,网上也没找到相应的文章,就自己看了看别人的bat程序,然后找到了引用变量的方法 ...
 
随机推荐
- mac OS X下git代码行统计命令
			
1.统计某人的代码提交量,包括增加,删除 git log --author=-- --until=-- --pretty=tformat: --numstat | awk '{ add += $1 ; ...
 - 版本控制器 (Svn,Git)
			
Svn: 集中式版本控制器,首先开发者在开始新一天的工作之前必须从服务器获取代码,然后进入自己的分支开发,开发完成后把自己的分支合并到主分支上进行提交,解决冲突.所有的版本信息都放在服务器上.如果脱离 ...
 - C#中Delegate
			
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
 - python的各种推导式(列表推导式、字典推导式、集合推导式)
			
推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的数据序列的结构体. 共有三种推导,在Python2和3中都有支持: 列表(lis ...
 - Sybase ASE报错:server Error: 8242, Severity: 16, State: 1
			
昨天上午,同事反映某系统在执行存储过程的过程中报错了,报错的信息异常如下: 05:00000:00009:2014/06/09 15:45:30.34 server Error: 8242, Seve ...
 - Nginx模块开发-理解HTTP配置
			
理解HTTP配置 相关数据结构 先明白Nginx下述数据结构,再理解 HTTP配置的解析与合并过程 ngx_module_t 官方API typedef struct{ NGX_MODULE_V1; ...
 - 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】
			
转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...
 - GNOME与KDE的战争
			
目录1 序言2 GNOME与KDE交替发展% M" O/ h% R( b f, ~7 W' n9 V, G3 GNOME获得商业公司的支持4 KDE3.5可实现半透明和阴影效果,界面华丽. ...
 - Android ADB 端口占用问题解决方案
			
问题描述: The connection to adb is down, and a severe error has occured. You must restart adb and Eclips ...
 - Asp.net 同时下载多个文件
			
整理自网络 下载思路是首先把多个文件进行压缩,然后再下载压缩成的压缩包 引用文件dll:ICSharpCode.SharpZipLib.dll 1. 合成下载文件夹 Protected Sub btn ...