以下示例使用GetComputerName,GetUserName,GetSystemDirectory,GetWindowsDirectory和ExpandEnvironmentStrings功能来获取有关系统配置的信息。此示例在窗口的客户区显示信息。
LPTSTR lpszSystemInfo; //指向系统信息字符串的指针
DWORD cchBuff = 256; //计算机或用户名的大小
TCHAR tchBuffer2[BUFFER]; //用于连接字符串的缓冲区
DWORD dwResult; //函数返回值
SYSTEM_INFO siSysInfo; //硬件信息的结构
int aTabs[1] = {260}; // Tab停止TabbedTextOut
TCHAR tchBuffer[BUFFER]; //用于扩展字符串的缓冲区
int nSize; //字符串大小
lpszSystemInfo = tchBuffer2;
//获取并显示计算机的名称。
GetComputerName(lpszSystemInfo, &cchBuff);
nSize = sprintf(tchBuffer, "Computer name: %s",
lpszSystemInfo);
TextOut(hdc, 15, 20, tchBuffer, nSize);
//获取并显示用户名。
GetUserName(lpszSystemInfo, &cchBuff);
nSize = sprintf(tchBuffer, "User name: %s",
lpszSystemInfo);
TextOut(hdc, 15, 40, tchBuffer, nSize);
//获取并显示系统目录。
nSize = GetSystemDirectory(lpszSystemInfo, MAX_PATH);
nSize = sprintf(tchBuffer, "System directory: %s",
lpszSystemInfo);
TextOut(hdc, 15, 60, tchBuffer, nSize);
//获取并显示Windows目录。
nSize = GetWindowsDirectory(lpszSystemInfo, MAX_PATH);
nSize = sprintf(tchBuffer, "Windows directory: %s",
lpszSystemInfo);
TextOut(hdc, 15, 80, tchBuffer, nSize);
//显示“环境变量”头。
nSize = sprintf(tchBuffer,
"Environment variables (partial list):");
TextOut(hdc, 15, 105, tchBuffer, nSize);
//展开OS和NTVERSION环境变量。
dwResult = ExpandEnvironmentStrings(
"OS=%OS% NTVERSION=%NTVERSION%",
lpszSystemInfo,
BUFFER);
TextOut(hdc,25,120,(LPCTSTR)lpszSystemInfo,
dwResult - 1);
//展开PATH环境变量。
dwResult = ExpandEnvironmentStrings(
"PATH=%PATH%",
lpszSystemInfo,
BUFFER);
TextOut(hdc,25,135,(LPCTSTR)lpszSystemInfo,
dwResult - 1);
//展开LIBPATH环境变量。
dwResult = ExpandEnvironmentStrings(
"LIBPATH=%LIBPATH%",
lpszSystemInfo,
BUFFER);
TextOut(hdc,25,150,(LPCTSTR)lpszSystemInfo,
dwResult - 1);
//展开TMP环境变量。
dwResult = ExpandEnvironmentStrings(
"TMP=%TMP%",
lpszSystemInfo,
BUFFER);
TextOut(hdc,25,165,(LPCTSTR)lpszSystemInfo,
dwResult - 1);