Как вызвать синий экран смерти (BSOD)

Нужно вызвать синий экран в Windows 10 32x и 64x Разделить на ноль или использовать сторонние библиотеки не вариант.


Ответы (1 шт):

Автор решения: Mars

Это можно сделать так:

#include <Windows.h>

typedef NTSTATUS(NTAPI* pdef_NtRaiseHardError)(NTSTATUS ErrorStatus, ULONG NumberOfParameters, ULONG UnicodeStringParameterMask OPTIONAL, PULONG_PTR Parameters, ULONG ResponseOption, PULONG Response);
typedef NTSTATUS(NTAPI* pdef_RtlAdjustPrivilege)(ULONG Privilege, BOOLEAN Enable, BOOLEAN CurrentThread, PBOOLEAN Enabled);

int main()
{    
    BOOLEAN f;
    ULONG u;
    LPVOID s = GetProcAddress(LoadLibraryA("ntdll.dll"), "RtlAdjustPrivilege");
    LPVOID l = GetProcAddress(GetModuleHandle(L"ntdll.dll"), "NtRaiseHardError");
    pdef_RtlAdjustPrivilege t = (pdef_RtlAdjustPrivilege)s;
    pdef_NtRaiseHardError N = (pdef_NtRaiseHardError)l;
    NTSTATUS NtRet = t(19, TRUE, FALSE, &f);
    N(STATUS_FLOAT_MULTIPLE_FAULTS, 0, 0, 0, 6, &u);
}
→ Ссылка