这个如何做

这个怎么做
我想让计算机显示蓝屏信息。
怎么样能蓝屏?

------解决方案--------------------
/*******************************************************************
驱动入口函数
********************************************************************/
NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject,IN PUNICODE_STRING RegistryPath)
{
NTSTATUS status;
UNICODE_STRING uniNameString,uniDosNameString;
PDEVICE_OBJECT FdoDeviceObject;
PDEVICE_EXTENSION pdx;

KdPrint(( "进入驱动入口函数!\n "));
KdPrint(( "RegistryPath=%wZ\n ",RegistryPath));

//指定设备名字
RtlInitUnicodeString(&uniNameString,L "\\Device\\TestDriver ");
//创建符号连接
RtlInitUnicodeString(&uniDosNameString,L "\\DosDevices\\TestDriver ");

KdPrint(( "uniNameString=%wZ\n ",&uniNameString));

//创建设备
status=IoCreateDevice(DriverObject,
sizeof(DEVICE_EXTENSION),
&uniNameString,
FILE_DEVICE_UNKNOWN,
0,
FALSE,
&FdoDeviceObject);
KdPrint(( "创建设备完成!\n "));

if(!NT_SUCCESS(status))
{
KdPrint(( "!NT_SUCCESS(status)0x%8x\n ",status));
return status;
}

//创建扩展设备对象
pdx=(PDEVICE_EXTENSION)FdoDeviceObject-> DeviceExtension;

KdPrint(( "PDEVICE_EXTENSION的地址为0x%8x\n ",pdx));

//存储FdoDeviceObject
pdx-> fdo=FdoDeviceObject;

//存储连接符号
RtlInitUnicodeString(&pdx-> ifSymLinkName,L "\\DosDevices\\TestDriver ");

//存储下一个设备对象地址
//pdx-> NextStackDevice=IoAttachDeviceToDeviceStack(FdoDeviceObject,Pdo);

KdPrint(( "创建扩展设备完成!\n "));

KdPrint(( "uniDosNameString=%wZ\n ",&pdx-> ifSymLinkName));

//创建符号连接
status = IoCreateSymbolicLink (&uniDosNameString, &uniNameString);
if (!NT_SUCCESS(status))
{
//IoDetachDevice(pdx-> NextStackDevice);
IoDeleteDevice(FdoDeviceObject);
KdPrint(( "status=0x%8x\n ",status));
return status;
}

// 指定驱动程序有关操作的模块入口(函数指针)
//DriverObject-> DriverExtension-> AddDevice = TestAddDevice;
DriverObject-> MajorFunction[IRP_MJ_DEVICE_CONTROL]=TestControl;
DriverObject-> MajorFunction[IRP_MJ_CREATE]=TestCreate;
DriverObject-> DriverUnload = TestDriverUnload;

return STATUS_SUCCESS;
}

/*
NTSTATUS TestAddDevice(IN PDRIVER_OBJECT DriverObject,IN PDEVICE_OBJECT Pdo)
{
KdPrint(( "驱动进入AddDevice函数\n "));

return STATUS_SUCCESS;
}
*/

//CreateFile()的分发例程
NTSTATUS TestCreate(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
{
NTSTATUS status;
//PDEVICE_EXTENSION pdx;

KdPrint(( "驱动进入IRP_MJ_CREATE\n "));

//创建一个设备扩展对象pdx,用于存储指向fdo扩展设备的指针:
//pdx=(PDEVICE_EXTENSION)DeviceObject-> DeviceExtension;

//IoSkipCurrentIrpStackLocation(Irp);

/*status=IoCallDriver(pdx-> NextStackDevice,Irp);
if(NT_SUCCESS(status))
{
KdPrint(( "IoCallDriver()函数执行成功!\n "));
KdPrint(( "status=0x%8x\n ",status));
return status;
}
*/
IoCompleteRequest(Irp, IO_NO_INCREMENT);

return STATUS_SUCCESS;
}

NTSTATUS TestControl(IN PDEVICE_OBJECT DeviceObject,IN PIRP Irp)
{


PIO_STACK_LOCATION IrpStack;
ULONG dwIoControlCode;
PULONG pvIOBuffer;