Форум — Ответы ( К темам )
? | Matt: С чем едят NtQuerySystemInformation? (27-03-2003 21:53:42) |
Народ, если кто-то что-то знает про эту функцию(Сабж), поделитесь, плз! У меня 3(!) описания этой функции и похоже, что все неправильные...:( | |
Павел (28-03-2003 00:16:46) | |
Как узнать время старта системы: (бросьте на форму кнопку Button1 и Label1) //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include <windows.h> #include <stdio.h> #define SystemTimeInformation 3 typedef struct _SYSTEM_TIME_INFORMATION { LARGE_INTEGER liKeBootTime; LARGE_INTEGER liKeSystemTime; LARGE_INTEGER liExpTimeZoneBias; ULONG uCurrentTimeZoneId; DWORD dwReserved; } SYSTEM_TIME_INFORMATION; typedef LONG (WINAPI *PROCNTQSI)(UINT,PVOID,ULONG,PULONG); PROCNTQSI NtQuerySystemInformation; //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { SYSTEM_TIME_INFORMATION Sti; LONG status; FILETIME ftSystemBoot; SYSTEMTIME stSystemBoot; NtQuerySystemInformation = (PROCNTQSI)GetProcAddress( GetModuleHandle("ntdll"), "NtQuerySystemInformation" ); if (!NtQuerySystemInformation) return; status = NtQuerySystemInformation(SystemTimeInformation,&Sti,sizeof(Sti),0); if (status!=NO_ERROR) return; ftSystemBoot = *(FILETIME *)&(Sti.liKeBootTime); FileTimeToLocalFileTime(&ftSystemBoot,&ftSystemBoot); FileTimeToSystemTime(&ftSystemBoot,&stSystemBoot); AnsiString s=""; s = s.sprintf("Date: %02d-%02d-%04d\nTime: %02d:%02d:%02d\n", stSystemBoot.wMonth,stSystemBoot.wDay,stSystemBoot.wYear, stSystemBoot.wHour,stSystemBoot.wMinute,stSystemBoot.wSecond); Label1->Caption = s; } //--------------------------------------------------------------------------- | |
Alex (28-03-2003 00:25:01) | |
Посмотрите: http://www.void.ru/?do=printable&id=876 | |
Matt (28-03-2003 15:23:05) | |
Огромное спасибо всем!!!!! Разобрался теперь где я наглюкал!!!! |