现在的位置: 首页 > 综合 > 正文

操作一个虚拟鼠标

2011年02月27日 ⁄ 综合 ⁄ 共 466字 ⁄ 字号 评论关闭

创建一个虚拟鼠标,在AddDevice中

	status = IoCreateDevice (DriverObject,
		sizeof(DEVICE_EXTENSION),
		NULL,
		FILE_DEVICE_MOUSE,
		0,
		true,	// Not exclusive
		&fdo);
这样创建的设备,即便创建符号链接,也不可能在应用程序中打开。
这需要在DriverEntry中创建一个另外一个设备,然后操作这个设备。
 
	UNICODE_STRING deviceLinkUnicodeString;
	RtlInitUnicodeString(&deviceLinkUnicodeString, DOS_DEVICE_NAME);
	status = IoCreateSymbolicLink(&deviceLinkUnicodeString, &deviceNameUnicodeString);
	if (!NT_SUCCESS(status))
	{
		if (FunctionDevice)
		{
			IoDeleteDevice(FunctionDevice);
			return status;
		}
	}

抱歉!评论已关闭.