const
DRIVER_INFORMATION = 11;
type
TPDWord = ^DWORD;
TDriverInfo = packed record
Address: Pointer;
Unknown1: DWORD;
Unknown2: DWORD;
EntryIndex: DWORD;
Unknown4: DWORD;
Name: array [0..MAX_PATH + 3] of Char;
end;
var
NtQuerySystemInformation: function (infoClass: DWORD;
buffer: Pointer;
bufSize: DWORD;
returnSize: TPDword): DWORD; stdcall = nil;
function GetDriverInfo: string;
var
temp, Index, numBytes, numEntries: DWORD;
buf: TPDword;
driverInfo: ^TDriverInfo;
begin
if @NtQuerySystemInformation = nil then
NtQuerySystemInformation := GetProcAddress(GetModuleHandle('ntdll.dll'),
'NtQuerySystemInformation');
// Obtain required buffer size
NtQuerySystemInformation(DRIVER_INFORMATION, @temp, 0, @numBytes);
// Allocate buffer
buf := AllocMem(numBytes * 2);
NtQuerySystemInformation(DRIVER_INFORMATION, buf, numBytes * 2, @numBytes);
numEntries := buf^;
driverInfo := Pointer(DWORD(buf) + 12);
Result := '';
for Index := 1 to numEntries do
begin
Result := Result + #$D#$A + 'Address: $' + IntToHex(DWORD(driverInfo^.Address), 8) +
'Name: "' + (driverInfo^.Name) + '"';
Inc(driverInfo);
end;
Delete(Result, 1, 2);
FreeMem(buf);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Add(GetDriverInfo)
end;
Этот топик читают: Гость
Ответов: 287
Рейтинг: 5
|
|||
Я понимаю что наглею.Но может кто-нибудь сжалится и переделает этот код в ниасм
|
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
|
|||
карма: 25 |
|
Ответов: 287
Рейтинг: 5
|
|||
Tadэто я пробывал.И в реестре ковырял.
Ладно не судьба-значит не судьба |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Udokanec, конкретно, зачем тебе это надо ?
|
|||
карма: 25 |
|
Ответов: 287
Рейтинг: 5
|
|||
Хочу программу обновления драйверов сделать
|
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Udokanec писал(а): Хочу программу обновления драйверов сделатьЧет я вообще не въехал... А причем здесь код в котором никак не видно даты, а только адрес и имя? Как по адресу и имени можно определить, что драйвер старый? |
|||
карма: 22 |
|
Ответов: 287
Рейтинг: 5
|
|||
Ну это то что я нашел.
|
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
c:\Windows\System32\drivers\*.sys
|
|||
карма: 25 |
|
Ответов: 287
Рейтинг: 5
|
|||
И как это распарсить
Ìîäóëü Íàçâàíèå Òèï äðàéâåðà Äàòà ññûëêè =============================== ================================ 1394ohci 1394 OHCI-ñîâìåñòèìûé Kernel 16.07.2016 11:21:36 3ware 3ware Kernel 19.05.2015 7:28:03 ACPI Äðàéâåð Microsoft ACPI Kernel 16.07.2016 11:10:47 AcpiDev Äðàéâåð óñòðîéñòâ ñ AC Kernel 16.07.2016 11:29:10 acpiex Microsoft ACPIEx Drive Kernel 16.07.2016 11:28:23 acpipagr Äðàéâåð àãðåãàòîðà ïðî Kernel 16.07.2016 11:29:00 AcpiPmi Äðàéâåð óñòðîéñòâà èçì Kernel 16.07.2016 11:19:44 acpitime Äðàéâåð ACPI Wake Alar Kernel 16.07.2016 11:29:20 ADP80XX ADP80XX Kernel 10.04.2015 5:49:48 AFD Äðàéâåð äîïîëíèòåëüíûõ Kernel 16.07.2016 11:24:31 ahcache Application Compatibil Kernel 16.07.2016 11:10:40 AmdK8 AMD K8 äðàéâåð ïðîöåññ Kernel 16.07.2016 11:10:42 amdkmdag amdkmdag Kernel 22.08.2015 11:10:03 amdkmdap amdkmdap Kernel 22.08.2015 10:45:00 AmdPPM Äðàéâåð ïðîöåññîðà AMD Kernel 16.07.2016 11:10:41 amdsata amdsata Kernel 14.05.2015 21:14:52 amdsbs amdsbs Kernel 12.12.2012 6:21:44 amdxata amdxata Kernel 01.05.2015 9:55:35 amd_sata amd_sata Kernel 17.06.2011 4:07:44 amd_xata amd_xata Kernel 17.06.2011 4:07:47 AODDriver4.3 AODDriver4.3 Kernel 11.02.2014 20:06:52 AppID Äðàéâåð AppID Kernel 16.07.2016 11:27:05 applockerflt Äðàéâåð ôèëüòðà Smartl Kernel 16.07.2016 11:27:27 AppvStrm AppvStrm File System 16.07.2016 11:10:45 AppvVemgr AppvVemgr File System 16.07.2016 11:10:56 AppvVfs AppvVfs File System 16.07.2016 11:10:53 arcsas Adaptec SAS/SATA-II RA Kernel 10.04.2015 4:12:07 AsyncMac Äðàéâåð àñèíõðîííîãî í Kernel 16.07.2016 11:29:00 atapi Êàíàë IDE Kernel 16.07.2016 11:29:05 AtiHDAudioSe ATI Function Driver fo Kernel 31.03.2011 16:15:43 b06bdrv Ñåòåâîé àäàïòåð VBD QL Kernel 25.05.2016 16:03:08 BasicDisplay BasicDisplay Kernel 16.07.2016 11:28:02 BasicRender BasicRender Kernel 16.07.2016 11:28:14 BCM43XX Äðàéâåð ñåòåâîãî àäàïò Kernel 01.11.2014 4:18:04 bcmfn bcmfn Service Kernel 08.06.2015 17:32:02 bcmfn2 bcmfn2 Service Kernel 16.03.2014 19:07:36 Beep Beep Kernel 16.07.2016 11:22:02 bowser Äðàéâåð ïîääåðæêè áðàó File System 16.07.2016 11:22:25 BthAvrcpTg HID äèñòàíöèîííîãî óïð Kernel 16.07.2016 11:18:28 BthHFEnum Ïåðå÷èñëèòåëü HID äèñò Kernel 16.07.2016 11:22:25 bthhfhid HID óïðàâëåíèÿ çâîíêàì Kernel 16.07.2016 11:18:24 BTHMODEM Äðàéâåð ñâÿçè Bluetoot Kernel 16.07.2016 11:19:09 buttonconver Ñëóæáà äëÿ óñòðîéñòâ ê Kernel 16.07.2016 11:29:14 CapImg Äðàéâåð HID äëÿ ñåíñîð Kernel 16.07.2016 11:21:50 cdfs CD/DVD File System Rea File System 16.07.2016 11:10:38 cdrom Äðàéâåð CD-ROM äèñêîâî Kernel 16.07.2016 11:10:42 cht4iscsi cht4iscsi Kernel 20.04.2016 18:54:30 cht4vbd Äðàéâåð âèðòóàëüíîé øè Kernel 15.04.2016 16:32:54 circlass Ïîòðåáèòåëüñêèå ÈÊ-óñò Kernel 16.07.2016 11:20:13 CisUtMonitor CisUtMonitor File System 30.10.2011 20:14:54 CLFS Common Log (CLFS) Kernel 16.07.2016 11:10:59 clreg Virtual Registry for C Kernel 16.07.2016 11:27:04 CmBatt Äðàéâåð áàòàðåè ñ ACPI Kernel 16.07.2016 11:28:28 CNG CNG Kernel 16.07.2016 11:18:19 cnghwassist CNG Hardware Assist al Kernel 16.07.2016 11:27:44 CompositeBus Äðàéâåð ïåðå÷èñëèòåëÿ Kernel 16.07.2016 11:20:11 condrv Console Driver Kernel 16.07.2016 11:10:38 |
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Udokanec писал(а): И как это распарсить Обратным парсером по пробелам. Первым выцепишь время, вторым -- дату, потом соединить дату и время. Редактировалось 2 раз(а), последний 2018-11-12 10:22:30 |
|||
карма: 22 |
|
Ответов: 287
Рейтинг: 5
|
|||
nescoЯ извиняюсь а ка это обратным парсером.Ни разу не стакивался
|
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Udokanec писал(а): извиняюсь а ка это обратным парсеромВот это должно помочь Элемент
Редактировалось 3 раз(а), последний 2018-11-12 10:49:39 |
|||
карма: 22 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Вот твой код, только не знаю, чем он может помочь?
Схема
|
|||
карма: 22 |
|
Ответов: 287
Рейтинг: 5
|
|||
Спасибо.И в правду ни чем.
Ну как то буду пробовать парсить текст.Хотя пока ничего хорошего не получается |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Udokanec писал(а): И как это распарсить |
|||
карма: 25 |
|