Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
 Аватар для Жанерке
35 / 35 / 8
Регистрация: 22.09.2013
Сообщений: 170

Конфигурация ПК

25.03.2014, 20:33. Показов 2788. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно выводить конфигурацию ПК .

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include "stdafx.h"
 
// lab1.cpp: главный файл проекта.
 
#include "stdafx.h"
#include "iostream"
#include <windows.h>
#include <locale>
#include <tchar.h>
#pragma comment(lib, "user32.lib")
 
TCHAR* envVarStrings[] =
{
  TEXT("OS         = %OS%"),
  TEXT("PATH       = %PATH%"),
  TEXT("HOMEPATH   = %HOMEPATH%"),
  TEXT("TEMP       = %TEMP%")
};
#define  ENV_VAR_STRING_COUNT  (sizeof(envVarStrings)/sizeof(TCHAR*))
#define INFO_BUFFER_SIZE 32767
 
int  main()
{
    setlocale(LC_ALL,"Russian");
   SYSTEM_INFO siSysInfo;
   DWORD i;
  TCHAR  infoBuf[INFO_BUFFER_SIZE];
  DWORD  bufCharCount = INFO_BUFFER_SIZE;
 
    GetSystemInfo(&siSysInfo); 
    printf("конфигурация ПК: \n");  //нашла в официальном сайте windows
   
  GetComputerName( infoBuf, &bufCharCount ) ;   
  _tprintf( TEXT("\n  имя компьютера:  %s"), infoBuf ); 
 
   GetUserName( infoBuf, &bufCharCount ) ;
  _tprintf( TEXT("\n  имя пользователя:   %s"), infoBuf ); 
 
    GetSystemDirectory( infoBuf, INFO_BUFFER_SIZE ) ; 
  _tprintf( TEXT("\n  системный каталог:   %s"), infoBuf ); 
  printf("\n  версия операционной системы: ");
    DWORD dwVersion = 0; 
    DWORD dwMajorVersion = 0;
    DWORD dwMinorVersion = 0; 
    DWORD dwBuild = 0;
    dwVersion = GetVersion();
    dwMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion)));
    dwMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion)));
    if (dwMajorVersion == 6 && dwMinorVersion==2) printf("Windows 8");
    else if (dwMajorVersion == 6 && dwMinorVersion==2) printf("Windows 8");
    else if (dwMajorVersion == 6 && dwMinorVersion==1) printf("Windows 7");
    else if (dwMajorVersion == 6 && dwMinorVersion==0) printf("Windows Vista");
    else if (dwMajorVersion == 5 && dwMinorVersion==2) printf("Windows Server 2003");
    else if (dwMajorVersion == 5 && dwMinorVersion==1) printf("Windows Server 2003");
    else if (dwMajorVersion == 5 && dwMinorVersion==0) printf("Windows 2000");
 
    printf("\n  номер версий: %d.%d", 
                dwMajorVersion,
                dwMinorVersion);
 
 
// остальные не могу найти ((
 
     printf("\n  тип процессора и его тактовая частота: %u\n ", siSysInfo.dwProcessorType); 
     printf("  число процессора %u\n ", siSysInfo.dwNumberOfProcessors);
       printf("  наличие кэш объемов %u\n ");
       printf("  объемов ОЗУ %u\n ");
       printf("  тип ОЗУ %u\n ");
       printf("  количество твердых дисков  %u\n ");
       printf("  объем памяти (общей и свободной) %u\n ");
       printf("  тип видеокарты %u\n ");
       printf("  объем памяти %u\n ");
       printf("  версия БИОС %u\n ");
    
   system("pause");
   return 0;
}
надеюсь поможете.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.03.2014, 20:33
Ответы с готовыми решениями:

параллельная конфигурация
Добрый день. В VS C++ 2008 создаю программку, которая должна бы работать на компах, где не установлена VS. Создаю релиз, в окне Output: ...

Конфигурация компьютера
Практически требуется заново реализовать утилиту от Windows под названием systeminfo хотелось бы получить инфу как это сделать? нужно...

Конфигурация Qt
При запуске config.bat (скачивал исходники здесь) выдаётся сообщение об ошибке (на скриншоте). Пользуюсь Windows XP. При этом когда пытаюсь...

1
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
25.03.2014, 21:17
1) Вместо GetSystemInfo лучше использовать GetNativeSystemInfo.
Имеет смысл при запуске на 64-битных Windows.

2) Вместо GetVersion лучше GetVersionEx, но вообще-то программу
могут запустить в режиме совместимости, и тогда функция вернет
другой номер. Обсуждалось недавно:
Определение ОС

3) else if (dwMajorVersion == 5 && dwMinorVersion==1) printf("Windows Server 2003");

5.1 - это Windows XP, а не Server 2003.
Кстати, здесь не показывается, клиентская ли Windows или серверная.
В помощь OSVERSIONINFOEX::wProductType (все от той же GetVersionEx).

Цитата Сообщение от Жанерке Посмотреть сообщение
// остальные не могу найти
Данные о процессоре, кэшах и т.п. надежнее всего
вытаскивать через инструкцию CPUID. В Visual C++ есть
соответствующий интринсик - __cpuidex.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.03.2014, 21:17
Помогаю со студенческими работами здесь

Конфигурация железа
Надо написать программу, чтобы она показывала какое железо стоит на компе. Тоесть: какая модель видеокарты, её обьём памяти.И так далее...

Динамическая или статическая конфигурация. Когда используется альтернативная IP-конфигурация?
1) Когда одна сеть использует протокол DHCP для своих IP-адресов, а в другой сети используются статические IP-адреса 2) После того как...

Конфигурация приложения .NET. XML конфигурация
Здравствуйте. Третьи сутки колдую над конфигурацией приложения, написанного на шарпе. Перелопатил кучу инфы, но так и не понял, как её...

Конфигурация ПК
Нужна помощь в выборе видеокарты. Играть буду на ультра в играх, например Crysis 3. Бюджет до 15000 руб.

Конфигурация пк
Помогите определится с конфигурацией компьютера. В1 • Процессор: Intel Pentium G3420 BOX • Материнская плата: ASUS H81M-K ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru