Вниз
Скачать: CL | DM;

Аналог SysErrorMessage для NTSTATUS.   Найти похожие ветки 

 
learner ©   (2006-10-07 22:15) [0]

Сабж. Просто, SysErrorMessage от функций с результатом типа NTSTATUS
иногда возвращает сообщение, что нет описания ошибки.


 
Игорь Шевченко ©   (2006-10-07 23:37) [1]

Я так делал:

procedure RaiseNtError(Status: NTSTATUS);
begin
 raise Exception.CreateFmt("An error occured (NTSTATUS=0x%.8x): "%s"",
   [Status, SysErrorMessage(RtlNtStatusToDosError(Status))]);
end;


 
learner ©   (2006-10-08 01:46) [2]

Спасибо :)


 
learner ©   (2006-10-08 16:12) [3]

>Игорь Шевченко ©
Пользуясь случаем задам еще пару вопросов по структурам из NtDll.
У меня, вроде, работает корректно со следующими поправками:
TOBJECT_TYPE_INFORMATION
...
PoolType: ULONG; // Исходно: Word
...
Методом научного тыка получила, что при перечислении
всех типов (NtQueryObject с параметром ObjectAllTypesInformation),
если PoolType - Word, то получаем AV
( выравнивание по четырем байтам учитывалось )

SYSTEM_MODULE_INFORMATION
...
ImageName : array[0..255] of char; // Исходно: 256
...
При 256 ImageName - ы возвращаются "со сдвигом"
Или я перемудрила ?


 
Игорь Шевченко ©   (2006-10-09 11:22) [4]

 { Информация о загруженных модулях режима ядра }
 SYSTEM_MODULE_INFORMATION = packed record
   Reserved: array[0..1] of ULONG;
   Base: PVOID;
   Size: ULONG;
   Flags: ULONG;
   Index: USHORT;
   Unknown: USHORT;
   LoadCount: USHORT;
   ModuleNameOffset: USHORT;
   ImageName: array[0..255] of char; { ANSI }
 end;
 PSYSTEM_MODULE_INFORMATION = ^SYSTEM_MODULE_INFORMATION;
 SYSTEM_MODULE_INFORMATION_ARRAY = array[0..16384] of
   SYSTEM_MODULE_INFORMATION;
 { Массив информации для класса SystemModuleInformation }
 SYSTEM_MODULES_INFORMATION = packed record
   Count: ULONG;
   Data: SYSTEM_MODULE_INFORMATION_ARRAY;
 end;
 PSYSTEM_MODULES_INFORMATION = ^SYSTEM_MODULES_INFORMATION;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
15-1159291763
Суслик
2006-09-26 21:29
2006.10.22
Системы bugtracking а


2-1159845271
e_u_
2006-10-03 07:14
2006.10.22
строки


2-1160290908
m-kirill-2003
2006-10-08 11:01
2006.10.22
Combobox


4-1149491795
Kirill.info
2006-06-05 11:16
2006.10.22
ScanLine жуткие тормаза


15-1159780948
Чапаев
2006-10-02 13:22
2006.10.22
NetBIOS-имя домена




   Наверх