Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 2
Всего онлайн: 2
Зарегистрировано юзеров: 6754
Комментариев на сайте: 651
Новый юзер: LeninDral



Последние комментарии
c
Rodneyhef прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
Zauważże, czym cechują się kredyty na sześcdziesięciu dni. Jako co zwrócić uwagę podczas asortymentu oferty? Które firmy użyczają chwilówek za taki czas? Sprawdź! [url=https://chwilowki-pozyczka.pl/]chwilówki[/url] [url=https://chwilowki-pozyczka.pl/chwilowki-online]chwilówki online[/url] [url=https://chwilowki-pozyczka.pl/pozyczki-na-raty]pożyczki ratalne[/url] [url=https://chwilowki-pozyczka.pl/kredyty-gotowkowe]kredyty gotówkowe[/url] Zdecydowana większość pożyczek krótkoterminowych udzielana jest od okres nie zaakceptować dłuższy niźli dwa miesiące. Krótki słowo spłaty wydaje się być charakterystyczny na rzecz tego rodzaju wytworów finansowych. Firmy pożyczkowe wprowadziły także zastrzeżenia, skutkujące tym, że nie każdy klient będzie mógł momentalnie zaciągnąć wzięcie pożyczki na 60 dni. W poniższym artykule podpowiadamy, na jak zwrócić uwagę, postanawiając się pod ten typ dofinansowania, na czym polegają opisane ograniczenia, oraz pokazujemy, które obecne na rynku firmy użyczają pożyczek dzięki 60 dni. chwilowki-pozyczka.pl Termin kredyty jest jednym z kluczowych składników mających bezpośredni wpływ jako całkowite koszty zobowiązania. Alternatywa krótszego czy dłuższego sezonu ma przełożenie na wysokość RRSO, innymi słowy rzeczywistej rocznej stopy oprocentowanie informującej nas w stosunku procentowym o kosztach związanych z pożyczką. Jest to pierwszy element, na który trzeba zwrócić szczególną uwagę w chwili wyboru możliwości. Drugim elementem jest uważna ocena spersonalizowanych możliwości kredytowych, co koniecznie musi towarzyszyć zaciąganiu jakiegokolwiek zobowiązania. Być może będziemy potrzebować produktu finansowego, którego spłata wydaje się znacznie dłuższa. Wówczas winniśmy zdecydować się jako pożyczki od raty. Warto również stwierdzić o aplikowanych przez spółki pożyczkowe ograniczeniach, wynikających spośród realizacji strategii ryzyka. Ochraniając się zanim niewypłacalnością pożyczkobiorców, instytucje finansowe przedłożyły szereg wielu ograniczeń, oddanych w szczególności dla osób nowych odbiorców. Ci pożyczkobiorcy, którzy zaciągają chwilówkę na raz 1 w podanej firmie, niejednokrotnie nie mogą liczyć na termin dłuższy niźli 30 dni. Poza tym wiążą ograniczenia szczególne dla kredytów krótkoterminowych. Przemówienie między innymi na temat weryfikacji petentów w charakteryzujących się ogromną popularnością rejestrach dłużników, ukończenie 21. roku egzystencji czy identyfikacja maksymalnej poziomie pożyczki. Pożądane byłoby podkreślić, hdy znaczna część przedsiębiorstw nie udziela pożyczek o dłuższym okresie w ogóle, co ponadto nie jest rezultatem wprowadzenia ograniczeń, a wynika po prostu wraz z oferty.
dealrattKi прокомментировал "Урок 3 - Конструкция IF...THEN...ELSE":
Это действительно радует меня. --- Бесподобное сообщение скачать fifa, скачать фифа а также [url=http://15fifa.ru/novosti-fifa-15]fifa 15 последние новости[/url] скачать фифа

Как узнать информацию о системе в Delphi

Вы, возможно, видели нестандартные дельфийские компоненты, позволяющие сделать лог системы. Сейчас мы самостоятельно реализуем что-нибудь не хуже. Прежде всего, где хранится эта самая системная инфа? В Реестре, куда мы сможем залезть, добавив модуль Registry в раздел Uses. Версия системы, имя владельца и т.д. имеют следующий адрес:

HKEY_LOCAL_MACHINESoftwareMicrosoft WindowsCurrentVersionExplorer

Или (для Windows NT):
HKEY_LOCAL_MACHINESOFTWAREMicrosoft Windows NTCurrentVersion

А информация о системных папках хранится здесь:
HKEY_CURRENT_USERSoftwareMicrosoft WindowsCurrentVersionExplorerShell Folders

В то же время данные о некоторых системных устройствах хранятся в файле System.ini. Значит, добавим модуль IniFiles, чтобы осуществить чтение информации из этого файла. Таким образом, если вы умеете работать с Реестром и Ini, узнать системную информацию вам будет так же просто, как сделать FORMAT C: COMPLETE из-под загрузочного диска. Изюминка в том, что наше приложение, которое эту инфорнмацию собирает и записывает в лог-файл, будет консольным, и создать его можно через File>New>Other>Console Application.

program OSInfo;

uses 
SysUtils, 
Windows, 
Registry, 
IniFiles; //!!

//ключи реестра, в которых будем искать информацию 
const 
folders = 'SoftwareMicrosoftWindowsCurrentVersionExplorerShell Folders'; 
WinVers = 'SoftwareMicrosoftWindowsCurrentVersion';

var 
F: TextFile; //файл с логом 
SerialNum: PDWord; 
a: DWord; 
i: integer; 
Drive, WinDir: String; 
buffer: array [0..255] of char; 
ms: TMemoryStatus;

//читаем информацию из Реестра 
function WinInfo(Root_Key: HKEY; Key_Open, Key_Read: string): string; 
var 
registry: TRegistry; 
begin 
//если Windows NT, открываем другой ключ 
if ((GetVersion and $80000000)=0) and (Key_Open=WinVers) then 
Key_Open:='SOFTWAREMicrosoftWindows NTCurrentVersion'; 
Registry := TRegistry.Create; 
try 
Registry.RootKey := Root_Key; 
Registry.OpenKey(Key_Open, False); 
Result := Registry.ReadString(Key_Read); 
finally 
Registry.Free; 
end; 
//если ничего не найдено, выводим "невозможно определить" 
if Result<>EmptyStr then Result:=Key_read+': '+Result else Result:=Key_read+': невозможно определить'; 
end;

//читаем из System.ini 
function GetDevice(Section, Ident: String): String; 
var inifile: TIniFile; 
begin 
IniFile:=TIniFile.Create(windir+'system.ini'); 
result:=IniFile.ReadString(Section,ident,'неизвестное устройство'); 
IniFile.Free; 
end;

begin 
//Узнаем директорию Винды. Она нам еще понадобится 
GetWindowsDirectory(buffer, SizeOf(buffer)); 
windir:=buffer; 
AssignFile(F,Windir+'OSInfo.txt'); //Соединямся с файлом лога 
ReWrite(F); //Переходим в начало файла 
WriteLn(F,'Лог создан: '+DateTimeToStr(now)); 
WriteLn(F,''); 
//пользователь, версия ОС и т.д. 
WriteLn(F,' О Системе:'); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'RegisteredOwner')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'RegisteredOrganization')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProductID')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProductKey')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProductName')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'Version')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'VersionNumber')); 
//Какой браузер? 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'Plus! VersionNumber')); 
WriteLn(F,''); 
WriteLn(F,' Память:'); 
WriteLn(F,'Доступные носители: '); 
//Получаем информацию о дисках 
for i := 0 to 25 do 
if (GetLogicalDrives and (1 shl i)) <> 0 then begin 
Drive:=Char(Ord('A') + i) + ':'; 
case GetDriveType(PChar(Drive)) of 
DRIVE_REMOVABLE: WriteLn(F,Drive+' (гибкий диск)'); 
DRIVE_CDROM: WriteLn(F,Drive+' (CD-ROM)'); 
DRIVE_FIXED: begin 
//находим серийный номер жесткого диска 
new(SerialNum); 
if getVolumeInformation(pChar(Drive),buffer,sizeof(buffer),SerialNum,a,a,nil,0) then 
WriteLn(F,Drive+' (жесткий диск, SN '+Inttostr(SerialNum^)+')'); 
end; 
else WriteLn(F,Drive+' (неизвестный диск'); 
end; 
end; 
//информация о памяти 
GlobalMemoryStatus(MS); 
WriteLn(F,'Оперативная память: '+FormatFloat('#,###" KB"', MS.dwTotalPhys / 1024)); 
WriteLn(F,'Свободно на жестком диске: '+FormatFloat('#,###" байт"',DiskFree(3))); 
//"3" указывает на диск C: 
WriteLn(F,'Объем жесткого диска: '+FormatFloat('#,###" байт"',DiskSize(3))); 
WriteLn(F,''); 
//узнаем об устройствах из System.ini 
WriteLn(F,' Устройства:'); 
WriteLn(F,'Клавиатура: '+getDevice('boot.description','keyboard.typ')); 
WriteLn(F,'Мышь: '+getDevice('boot.description','mouse.drv')); 
WriteLn(F,'Дисплей: '+getDevice('boot.description','display.drv')); 
WriteLn(F,'Хранитель экрана: '+getDevice('boot','SCRNSAVE.EXE')); 
WriteLn(F,''); 
//читаем системные папки из Реестра 
WriteLn(F,' Системные папки:'); 
GetCurrentDirectory(SizeOf(buffer), buffer); 
WriteLn(F,'Текущий каталог: '+buffer);

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Cache')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ConfigPath')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Cookies')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Desktop')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Favorites')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Fonts')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'History')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Local AppData')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'MediaPath')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'My Music')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'My Pictures')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'NetHood')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Personal')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'PrintHood')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProgramFilesDir')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'CommonFilesDir')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Programs')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Recent')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'SendTo')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Start Menu')); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'StartUp')); 
GetSystemDirectory(buffer, SizeOf(buffer)); 
WriteLn(F,'System: '+buffer); 
GetTempPath(Sizeof(buffer),buffer); 
WriteLn(F,'Temp: '+buffer); 
WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Templates')); 
WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'WallPaperDir')); 
WriteLn(F,'Windows: '+WinDir); 
Close(F); //отсоединяемся от файла 
end.
Результаты сохранятся в директории Windows в файле OSInfo.txt. Чтобы ознакомиться с ними, вам достаточно открыть этот файл.

Такое приложение весит 156 кило. А если бы мы создали "нормальную" программу с формой, размер был бы в два-три раза больше.

Вот и всё, Удачи!

Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 24 Ноября 2013
Просмотров:


Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.