GUI程序和CUI程序各自如何获取进程的环境变量
来源:互联网 发布:淘宝香火符咒 编辑:程序博客网 时间:2024/06/08 13:42
GUI程序获取方法:
void Ctest1Dlg::DumpEnvironmentStrings(){// 获取完整的环境块PTSTR pEnvBlock = GetEnvironmentStrings();// 将pEnvBlock变量的值备份到的pszCurrent中目的://a、用pEnvBlock释放该内存块。如果pEnvBlock的值被改变了,就没法释放该内存,因为找不到内存的起始地址//b、用pszCurrent来遍历环境变量PTSTR pszCurrent = pEnvBlock;HRESULT hResult = S_OK;PCTSTR pszPos = NULL;int current = 0;while (pszCurrent != NULL){// 过滤掉不属于环境变量的字符串// 为什么要用“=”来判断当前字符串是否是环境变量?// 答:因为环境变量是以“变量名=变量值”形式存在的,不会以“=”开头,所以可以用这个办法来判断if (*pszCurrent != _T('=')) // 打印环境变量{TRACE(pszCurrent);// 在调试窗口下可以看到打印出来的环境变量以及对应的值(格式为:变量名=变量值)TRACE(_T("\r\n"));}else // 打印非环境变量{TRACE(pszCurrent);TRACE(_T("\r\n"));}// 遍历下一个变量++current;// 移动到字符串的末尾while (*pszCurrent != _T('\0'))++pszCurrent;++pszCurrent;// 检查释放是最后的字符串if (*pszCurrent == _T('\0'))break;}// 释放环境块FreeEnvironmentStrings(pEnvBlock);}
CUI程序获取的方法:
#include "stdafx.h"#include <stdlib.h>#include <Windows.h>void DumpEnvVariables(PTSTR pEnvBlock[]){PTSTR* pElement = (PTSTR*)pEnvBlock;while (*pElement != NULL){_tprintf(_T("%s\r\n"), *pElement);// 向控制台窗口输出环境变量(格式:变量名=变量值)++pElement;}}// 建立控制台程序是,编译器默认情况下只生成前两个参数,env参数是我手动添加的,// 该参数存储的就是当前进程的环境变量,通过解析该变量的值,就可以得到环境变量的值int _tmain(int argc, _TCHAR* argv[], TCHAR* env[]){DumpEnvVariables(env);system("pause");return 0;}
0 0
- GUI程序和CUI程序各自如何获取进程的环境变量
- windows的应用程序之CUI(控制台)程序和(GUI)程序
- 一个GUI程序如何创建一个控制台程序(CUI)
- VC的控制台程序,如何获取输入参数和环境变量
- windows程序如何获取进程的命令行
- Linux下程序(进程)如何获取自身的绝对路径
- 如何获取某个进程的主窗口以及创建进程的程序名(进程映像名)
- 设置和获取所在进程的环境变量
- GUI程序的RAD和脚本化?
- Android程序里面的进程和线程如何运作的
- 如何获取某个进程的主窗口以及创建进程的程序名?
- 如何获取某个进程的主窗口以及创建进程的程序名?
- 如何获取某个进程的主窗口以及创建进程的程序名?
- 如何获取某个进程的主窗口以及创建进程的程序名?
- 如何获取某个进程的主窗口以及创建进程的程序名?
- 程序和进程的区别
- 进程和程序的区别
- 进程和程序的区别
- 感觉风华高科风格的服饰的规范化交换空间环境规划发给对方
- 笑着笑着笑着小城之春自行车
- 的正是典型的大城市向的诚信厂小厂小长v
- 北~京
- leetcode two sum
- GUI程序和CUI程序各自如何获取进程的环境变量
- 科技园颓废太妃糖发一
- 于仁泰一个
- POJ2352
- 反导系统
- 预提费用
- 一周学会Linux实战
- 计算机学院研发第二轮考核---------简述WebViewClient与WebChromeClient,浏览器之无痕浏览
- adc0809的使用