Получение информации о системе

Данный пример представляет собой консольное приложение, и для получения информации о системе использует функции GetComputerName, GetUserName, GetSystemDirectory, GetWindowsDirectory, и ExpandEnvironmentStrings
#include <windows.h>
#include <stdio.h>

#define BUFSIZE 1024

void main()
{
LPTSTR lpszSystemInfo; // указатель на строку, в которой
// будет информация о системе.
DWORD cchBuff = 256; // длина имени компьютера или
// пользователя.
TCHAR tchBuffer[BUFSIZE]; // буфер для строки.

DWORD dwResult; // возвращаемое значение функции.

lpszSystemInfo = tchBuffer;

// Получаем и отображаем имя компьютера.

if( GetComputerName(lpszSystemInfo, &cchBuff) )
printf("Computer name: %s\n", lpszSystemInfo);

// Получаем и отображаем имя пользователя.

if( GetUserName(lpszSystemInfo, &cchBuff) )
printf("User name: %s\n\n", lpszSystemInfo);

// Получаем и отображаем системную директорию.

if( GetSystemDirectory(lpszSystemInfo, MAX_PATH+1) )
printf("System directory: %s\n", lpszSystemInfo);

// Получаем и отображаем директорию Windows.

if( GetWindowsDirectory(lpszSystemInfo, MAX_PATH+1) )
printf("Windows directory: %s\n\n", lpszSystemInfo);


printf("Переменные окружения (partial list): \n");

// Получаем переменную окружения OS.

dwResult = ExpandEnvironmentStrings(
"OS=%OS%",
lpszSystemInfo,
BUFSIZE);
if( dwResult <= BUFSIZE )
printf(" %s\n", lpszSystemInfo);


// Получаем переменную окружения PATH.

dwResult = ExpandEnvironmentStrings(
"PATH=%PATH%",
lpszSystemInfo,
BUFSIZE);
if( dwResult <= BUFSIZE )
printf(" %s\n", lpszSystemInfo);

// Получаем переменную окружения TMP.

dwResult = ExpandEnvironmentStrings(
"TEMP=%TEMP%",
lpszSystemInfo,
BUFSIZE);
if( dwResult <= BUFSIZE )
printf(" %s\n", lpszSystemInfo);
Читайте также:
  • Как узнать количество элементов и размер корзины
    //Получает размер и количество элементов в корзинеSHSTDAPI SHQueryRecycleBin( LPCTSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);   ...
  • Как очистить корзину
    //Очищает корзину на указанном дискеSHSTDAPI SHEmptyRecycleBin( HWND hwnd, LPCTSTR pszRootPath, DWORD dwFlags);   ...
  • Как использовать SendMessage() вместо SendDlgItemMessage()
    Как SendMessage() так и SendDlgItemMessage() можно использовать для добавление строк в окно списка. SendMessage() используется для отправки сообщения указанному окну используя дескриптор окна списка. SendDlgItemMessage() используется для отправки сообщения дочернему окну данного окна используя и...
  • Как скрыть/показать панель задач
    Следующая функция позволяет не только скрыть/показать панель задач, но и установить рабочую область десктопа (при помощи SystemParametersInfo), чтобы при скрытии панель задач внизу не оставалось пустого места:void gShowHideTaskBar(BOOL bHide /*=FALSE*/){ CRect rectWorkArea = CRect(0,0,0,0); CRect ...
  • Как программно нажать кнопку Пуск
    А вот так: #include void main(void){ HWND hTaskBar, hButton; HDC hDCScreen = GetDC(NULL); DWORD ScreenHeight=GetDeviceCaps(hDCScreen,VERTRES); ReleaseDC(NULL, hDCScreen); hTaskBar= FindWindow("Shell_TrayWnd",NULL); hButton= GetWindow(hTaskBar, GW_CHILD); ...