GetEnvironmentVariable 獲取系統環境變量


轉,原文地址https://blog.csdn.net/hellokandy/article/details/52242365

常用的系統環境變量有:

WINDIR: //系統目錄 - C:\WINDOWS
SYSTEMROOT: //系統目錄 - C:\WINDOWS
SYSTEMDRIVE:    //系統根目錄 - C:
HOMEDRIVE:    //當前用戶根目錄 - C:
USERPROFILE:    //當前用戶目錄 - C:\Users\Kandy
HOMEPATH:    //當前用戶路徑 - \Users\Kandy
TMP:    //當前用戶臨時文件夾 - C:\Users\Kandy\AppData\Local\Temp
TEMP:    //當前用戶臨時文件夾 - C:\Users\Kandy\AppData\Local\Temp
APPDATA:    //當前用戶數據文件夾 - C:\Users\Kandy\AppData\Roaming
PROGRAMFILES:    //程序默認安裝目錄 - C:\Program Files (x86)
COMMONPROGRAMFILES:    //文件通用目錄 - C:\Program Files (x86)\Common Files
USERNAME:    //當前用戶名 - Kandy
ALLUSERSPROFILE:    //所有用戶文件目錄 - C:\ProgramData
OS: //操作系統名 - Windows_NT
COMPUTERNAME: //計算機名 - KANDY-PC
NUMBER_OF_PROCESSORS: //處理器個數 - 4
PROCESSOR_ARCHITECTURE: //處理器芯片架構 - x86
PROCESSOR_LEVEL:    //處理器型號 - 6
PROCESSOR_REVISION: //處理器修訂號 - 3c03
USERDOMAIN: //包含用戶帳號的域 - KANDY-PC
COMSPEC:    //C:\WINDOWS\system32\cmd.exe
PATHEXT:    //執行文件類型 - .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PATH:    //搜索路徑

 

使用 GetEnvironmentVariable 來獲取環境變量:

 1 #include <Windows.h>
 2 #include <iostream>
 3 
 4 int main()
 5 {
 6 wchar_t buffer[MAX_PATH];
 7 DWORD code = GetEnvironmentVariable(L"WINDIR", buffer, MAX_PATH);
 8 std::wcout << L"WINDIR:\t\t\t" << buffer << std::endl;
 9 
10 GetEnvironmentVariable(L"SYSTEMROOT", buffer, MAX_PATH);
11 std::wcout << L"SYSTEMROOT:\t\t" << buffer << std::endl;
12 
13 GetEnvironmentVariable(L"SYSTEMDRIVE", buffer, MAX_PATH);
14 std::wcout << L"SYSTEMDRIVE:\t\t" << buffer << std::endl;
15 
16 GetEnvironmentVariable(L"HOMEDRIVE", buffer, MAX_PATH);
17 std::wcout << L"HOMEDRIVE:\t\t" << buffer << std::endl;
18 
19 GetEnvironmentVariable(L"USERPROFILE", buffer, MAX_PATH);
20 std::wcout << L"USERPROFILE:\t\t" << buffer << std::endl;
21 
22 GetEnvironmentVariable(L"HOMEPATH", buffer, MAX_PATH);
23 std::wcout << L"HOMEPATH:\t\t" << buffer << std::endl;
24 
25 GetEnvironmentVariable(L"TMP", buffer, MAX_PATH);
26 std::wcout << L"TMP:\t\t\t" << buffer << std::endl;
27 
28 GetEnvironmentVariable(L"TEMP", buffer, MAX_PATH);
29 std::wcout << L"TEMP:\t\t\t" << buffer << std::endl;
30 
31 GetEnvironmentVariable(L"APPDATA", buffer, MAX_PATH);
32 std::wcout << L"APPDATA:\t\t" << buffer << std::endl;
33 
34 GetEnvironmentVariable(L"PROGRAMFILES", buffer, MAX_PATH);
35 std::wcout << L"PROGRAMFILES:\t\t" << buffer << std::endl;
36 
37 GetEnvironmentVariable(L"COMMONPROGRAMFILES", buffer, MAX_PATH);
38 std::wcout << L"COMMONPROGRAMFILES:\t" << buffer << std::endl;
39 
40 GetEnvironmentVariable(L"USERNAME", buffer, MAX_PATH);
41 std::wcout << L"USERNAME:\t\t" << buffer << std::endl;
42 
43 GetEnvironmentVariable(L"ALLUSERSPROFILE", buffer, MAX_PATH);
44 std::wcout << L"ALLUSERSPROFILE:\t" << buffer << std::endl;
45 
46 GetEnvironmentVariable(L"OS", buffer, MAX_PATH);
47 std::wcout << L"OS:\t\t\t" << buffer << std::endl;
48 
49 GetEnvironmentVariable(L"COMPUTERNAME", buffer, MAX_PATH);
50 std::wcout << L"COMPUTERNAME:\t\t" << buffer << std::endl;
51 
52 GetEnvironmentVariable(L"NUMBER_OF_PROCESSORS", buffer, MAX_PATH);
53 std::wcout << L"NUMBER_OF_PROCESSORS:\t" << buffer << std::endl;
54 
55 GetEnvironmentVariable(L"PROCESSOR_ARCHITECTURE", buffer, MAX_PATH);
56 std::wcout << L"PROCESSOR_ARCHITECTURE:\t" << buffer << std::endl;
57 
58 GetEnvironmentVariable(L"PROCESSOR_LEVEL", buffer, MAX_PATH);
59 std::wcout << L"PROCESSOR_LEVEL:\t" << buffer << std::endl;
60 
61 GetEnvironmentVariable(L"PROCESSOR_REVISION", buffer, MAX_PATH);
62 std::wcout << L"PROCESSOR_REVISION:\t" << buffer << std::endl;
63 
64 GetEnvironmentVariable(L"USERDOMAIN", buffer, MAX_PATH);
65 std::wcout << L"USERDOMAIN:\t\t" << buffer << std::endl;
66 
67 GetEnvironmentVariable(L"COMSPEC", buffer, MAX_PATH);
68 std::wcout << L"COMSPEC:\t\t" << buffer << std::endl;
69 
70 GetEnvironmentVariable(L"PATHEXT", buffer, MAX_PATH);
71 std::wcout << L"PATHEXT:\t\t" << buffer << std::endl;
72 
73 GetEnvironmentVariable(L"PATH", buffer, MAX_PATH);
74 std::wcout << L"PATH:\t\t" << buffer << std::endl;
75 
76 system("pause");
77 return 0;
78 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM