Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.012 c
1-1132729565
Pavor
2005-11-23 10:06
2005.12.18
Выделение объекта по щелчку мышки


4-1129313089
Zoom
2005-10-14 22:04
2005.12.18
Как прочитать блок памяти...


2-1133178578
alexproger
2005-11-28 14:49
2005.12.18
Проблема с контруктором


2-1133466205
Officeman
2005-12-01 22:43
2005.12.18
HINT не высвечивается в w98 и wXP


3-1130853165
Goast
2005-11-01 16:52
2005.12.18
Репликация interBase





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский