Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.18;
Скачать: CL | DM;

Вниз

BSOD KeBugCheckEx как???   Найти похожие ветки 

 
timotei   (2005-10-18 14:56) [0]

Простой вопрос. Как намеренно вызвать BSOD с указанием кода ошибки? Я так понял это выполняет функция KeBugCheckEx? Маленький пример приветствуется :)


 
Игорь Шевченко ©   (2005-10-18 15:52) [1]


> Маленький пример приветствуется :)


В DDK в примерах есть.


 
timotei   (2005-10-18 16:12) [2]

А эту процедуру вообще из регулярного приложения delphi вызвать можно?
У меня нет DDK можно copypaste"ом?


 
timotei   (2005-10-18 16:21) [3]

Делаю так, вываливается с EAccessViolation:

program Project1;

uses
 Forms,
 Windows, Messages, SysUtils, Variants, Classes, Dialogs;

procedure KeBugCheck(err: integer); external "ntoskrnl.exe";

begin
 Application.Initialize;
 Application.Run;
 KeBugCheck(11);
 exit;
end.


 
umbra ©   (2005-10-18 16:37) [4]


> begin
>  Application.Initialize;
>  Application.Run;
>  KeBugCheck(11);
>  exit;
> end.
>


А что, синий экран нужен после закрытия главной формы?


 
timotei   (2005-10-18 16:50) [5]

главной формы нет.


 
Игорь Шевченко ©   (2005-10-18 16:54) [6]


> У меня нет DDK можно copypaste"ом?


Можно.

VOID
ClasspReleaseQueue(
   IN PDEVICE_OBJECT Fdo,
   IN PIRP ReleaseQueueIrp OPTIONAL
   )
{
   PIO_STACK_LOCATION irpStack;
   PIRP irp;
   PFUNCTIONAL_DEVICE_EXTENSION fdoExtension = Fdo->DeviceExtension;
   PDEVICE_OBJECT lowerDevice;
   PSCSI_REQUEST_BLOCK srb;
   KIRQL currentIrql;

   lowerDevice = fdoExtension->CommonExtension.LowerDeviceObject;

   //
   // we raise irql seperately so we"re not swapped out or suspended
   // while holding the release queue irp in this routine.  this lets
   // us release the spin lock before lowering irql.
   //

   KeRaiseIrql(DISPATCH_LEVEL, &currentIrql);

   KeAcquireSpinLockAtDpcLevel(&(fdoExtension->ReleaseQueueSpinLock));

   //
   // make sure that if they passed us an irp, it matches our allocated irp.
   //

   ASSERT((ReleaseQueueIrp == NULL) ||
          (ReleaseQueueIrp == fdoExtension->PrivateFdoData->ReleaseQueueIrp));

   //
   // ASSERT that we"ve already allocated this. (should not occur)
   // try to allocate it anyways, then finally bugcheck if
   // there"s still no memory...
   //

   ASSERT(fdoExtension->PrivateFdoData->ReleaseQueueIrpAllocated);
   if (!fdoExtension->PrivateFdoData->ReleaseQueueIrpAllocated) {
       ClasspAllocateReleaseQueueIrp(fdoExtension);
   }
   if (!fdoExtension->PrivateFdoData->ReleaseQueueIrpAllocated) {
       KeBugCheckEx(SCSI_DISK_DRIVER_INTERNAL, 0x12, (ULONG_PTR)Fdo, 0x0, 0x0);
   }


 
timotei   (2005-10-18 17:05) [7]

Ну вот, это драйвер. а из обычного приложения?


 
Игорь Шевченко ©   (2005-10-18 17:11) [8]

timotei   (18.10.05 17:05) [7]


> а из обычного приложения?


А из обычного нельзя.


 
umbra ©   (2005-10-18 17:16) [9]


> procedure KeBugCheck(err: integer); external "ntoskrnl.exe";


Я не специалист по апи, но только что здесь
http://delphimaster.net/view/1-1129629760/

читал про экспортирование функций. Там проблема была в соглашении о вызове.


 
_silver ©   (2005-10-18 19:38) [10]

<offtop>
Игорь, если у вас ddk для w2k или xp, не могли бы мне выслать содержимое 3х папок?
src\video\displays\mirror\disp
src\video\miniport\mirror\mini
src\video\displays\mirror\app

Заранее спасибо.
</offtop>


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

_silver ©   (18.10.05 19:38) [10]

<offtopic>
Отослал
</offtopic>


 
_silver ©   (2005-10-19 08:25) [12]

Игорь Шевченко ©   (18.10.05 22:18) [11]

Спасибо.


 
Idx ©   (2005-10-19 11:06) [13]

И мне если можно MS-MEN@yandex.ru



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

Текущий архив: 2005.12.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.063 c
2-1133422940
xfox
2005-12-01 10:42
2005.12.18
Как создать Слайд шоу с помошью Imagelist, Image


1-1132244343
VEZ
2005-11-17 19:19
2005.12.18
Как програмно перевести определённый Node в TTreeView в состояние


3-1130768443
Term
2005-10-31 17:20
2005.12.18
Как выбрать только дубли


14-1133214311
SerJaNT
2005-11-29 00:45
2005.12.18
Интегралы


14-1132951298
antonpv
2005-11-25 23:41
2005.12.18
Delphi 7 Service Pack1