Суббота, 12.07.2025, 09:05
Приветствую Вас Гость | RSS
Главная страница | Каталог статей | Регистрация | Вход
Меню сайта
Категории каталога
Програминг [4]
Наш опрос
Оцените мой сайт
Всего ответов: 42
Форма входа
Поиск по каталогу
Друзья сайта
Статистика
PCPROG.3DN.RU
Начало » Статьи » Програминг » Програминг

Информация о системе - C++

Информация о системе - C++

Для вывода информации о системе будут использованы следующие функции (рис. 1):
- getwindowsdirectory — возвращает путь к каталогу windows;
- getsystemdirectory — возвращает путь к системному каталогу windows;
- getcomputername — возвращает имя компьютера.

Текст программы:
#include
#pragma hdrstop
#include "text.h"
//------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
tform1 *form1;
//------------------
__fastcall tform1::tform1(tcomponent* owner)
: tform(owner)
{
}
//------------------
void __fastcall tform1::formcreate(tobject *sender)
{
char windowsdirectory[max_path];
getwindowsdirectory(windowsdirectory, max_path);
labelededit1–>text=windowsdirectory;
char systemdirectory[max_path];
getsystemdirectory(systemdirectory, max_path);
labelededit2–>text=systemdirectory;
unsigned long size = max_computername_length + 1;
char *buffer = new char[size];
getcomputername(buffer, &size);
labelededit3–>text=buffer;
delete [] buffer;
}
//------------------
void __fastcall tform1::button1click(tobject *sender)
{
close();
}

Информация о дисках
Чтобы узнать системную информацию, не обязательно использовать функции api. c++builder имеет собственные функции для ее определения. Будут использованы следующие функции.
- disksize — возвращает размер диска в байтах. В качестве входного параметра используется целое число, которое означает: 0 — текущий диск, 1 — a, 2 — b и т. д.
- diskfree — возвращает размер в байтах свободного пространства на диске.

Текст программы:
#include
#pragma hdrstop
#include "text.h"
//-----------------------
#pragma package(smart_init)
#pragma link "cgauges"
#pragma resource "*.dfm"
tform1 *form1;
__int64 size;
__int64 freespace;
//-----------------------
__fastcall tform1::tform1(tcomponent* owner)
: tform(owner)
{
}
//-----------------------
void __fastcall tform1::combobox1change(tobject *sender)
{
if (combobox1–>itemindex>-1)
{
size = disksize(combobox1–>itemindex+1);
freespace = diskfree(combobox1–>itemindex+1);
if (size>0)
{
labelededit3–>text=inttostr(size/1024/1024);
labelededit1–>text=inttostr(freespace/1024/1024);
labelededit2–>text=inttostr((size-freespace)/1024/1024);
cgauge1–>progress= freespace*100/size;
}
else
{
showmessage("Диска нет!nnВставьте другой диск.");
}
}
}

Информация о шрифтах, установленных в системе
Иногда получить информацию можно из свойств объектов. Для вывода информации о количестве шрифтов в системе достаточно получить значение свойства screen–>fonts–>count. Наименования шрифтов хранятся в строках screen–>fonts–>strings[i], где i — целое число, означающее индекс очередного наименования.

#include
#pragma hdrstop
#include "text.h"
//-----------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
tform1 *form1;
//-----------------------
__fastcall tform1::tform1(tcomponent* owner)
: tform(owner)
{
}
//-----------------------
void __fastcall tform1::formcreate(tobject *sender)
{
for (int i=0; ifonts–>count; i++)
combobox1–>items–>add(screen–>fonts–>strings[i]);
combobox1–>itemindex=0;
label2–>font–>name=combobox1–>text;
}
//-----------------------
void __fastcall tform1::combobox1change(tobject *sender)
{
label2–>font–>name=combobox1–>text;
}

Категория: Програминг | Добавил: pcprog (24.04.2007) | Автор: Примеры из книги c++ Трюки и эффект
Просмотров: 847 | Рейтинг: 5.0 |

Всего комментариев: 0
Имя *:
Email *:
Код *:
Хостинг от uCozCopyright PCPROG.3DN.RU © 2007