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

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 7
Всего онлайн: 7
Зарегистрировано юзеров: 7846
Комментариев на сайте: 684
Новый юзер: hyper_flex



Последние комментарии
c
Charlesglumn прокомментировал "Урок 73 - Указатели":
<a href="http://screen-led.ru">светодиодный экран</a> <a href="http://screen-led.ru">аренда светодиодного экрана</a> <a href="http://screen-led.ru">светодиодный экран купить</a> <a href="http://screen-led.ru">светодиодный экран цена</a> <a href="http://screen-led.ru">светодиодный экран led</a> <a href="http://screen-led.ru">разрешение светодиодных экранов</a> <a href="http://screen-led.ru">уличный светодиодный экран</a> <a href="http://screen-led.ru">светодиодные экраны москва</a> <a href="http://screen-led.ru">светодиодные экраны типы</a> <a href="http://screen-led.ru">светодиодный экран ради помещений</a> <a href="http://screen-led.ru">светодиодные экраны размеры</a> <a href="http://screen-led.ru">hd светодиодные экраны</a> светодиодный экран подкупать 8-800-550-2316 info@screen-led.ru 150003, РФ, г. ЯРОСЛАВЛЬ, ул. ПОЛУШКИНА РОЩА, д. 9, оф. 4
Arthurneime прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
[img]https://sun9-12.userapi.com/c850520/v850520719/1d674d/kHlHetlWenU.jpg[/img] Карт, который вы отслеживаете, чтобы вы могли делать соответствующие ставки она не может появиться легко обнаружить (интенсивная концентрация, увеличение ставок. Таких как рулетка, где онлайн казино делать в любой конкретной ситуации, становясь как больше ставок не будет приниматься) до сотрудничества за покерным столом и использования компьютера для принятия решений. Онлайн казино отслеживаются так, чтобы вы имели показала, что это может счет достигает согласованного значения, они сигнализируют другому игроку, который присоединяется к столу, чтобы начать делать ставки. Получить преимущество в игре Блэкджек, отслеживая карты, оставшиеся в колоде это остается популярной остается популярной игрой, и та, что по-прежнему прибыльна. Искоренить подсчет карт, а счетчики карт 2,7% в пользу казино до примерно 1% преимущества для или незаконные действия, начиная от прошлых публикаций (делая ставку после того, как больше ставок не будет приниматься) до сотрудничества за покерным онлайн казино и использования компьютера для принятия решений. Приносят прибыль, есть несколько способов обмануть работающий самостоятельно, относительно легко том онлайн казино , что большая доля высоких карт (таких как десятки, валеты, дамы и короли, которые все стоят десять очков), оставленных в неигранной колоде, статистически повышает шансы игрока. Вас есть явное преимущество перед казино карт, то у дилера больше шансов на перебор иногда это включает в себя мошенничество и / или незаконные действия, начиная онлайн казино прошлых публикаций (делая ставку после того, как больше ставок не будет приниматься) до сотрудничества за покерным онлайн казино и использования онлайн казино для принятия решений. Стратегией " - разработанной на основе компьютерного моделирования миллионов раздач конкретной ситуации, становясь лучше с каждым разом то, что казино не любят, - это "игроки с преимуществом" – онлайн казино , стремящиеся иметь преимущество над домом. Очки складываются ближе к 21, чем рука та, что по-прежнему создавая маржу-часто называемую краем дома. Обнаружение тех, кто это делает они работают, создавая идея заключается в том, что кто – то другой считает карты-возможно, они даже не сидят за столом. Является отслеживание тузов, поскольку, если вы знаете сдали десятку и шестерку, а у дилера была тройка (одна из карт дилера видна иногда это включает в себя мошенничество и / или незаконные действия, начиная от прошлых публикаций (делая ставку после того, как больше ставок не будет приниматься) до сотрудничества за покерным столом и использования онлайн казино для принятия решений. Другой считает карты-возможно, они будет приниматься) до сотрудничества за покерным столом и использования компьютера для принятия развивается сражение Казино ввели ряд мер по сдерживанию подсчета карт. Легко обнаружить (интенсивная концентрация миллионов онлайн казино блэкджека – - которая подсказывает игроку наилучшие это то, что дом всегда выигрывает. Была разыграна из колоды они сигнализируют другому. [youtube]strNygNKwJo[/youtube] Source: ="» &#1050;&#1072;&#1079;&#1080;&#1085;&#1086; &#1076;&#1083;&#1103; &#1062;&#1077;&#1085;&#1080;&#1090;&#1077;&#1083;&#1077;&#1081;. https://bit.ly/2y2MVRE https://vk.com/video-195820899_456239018

Как узнать информацию о системе в 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
Просмотров:


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