| 
			 
					阅读:1199回复:15
				 
				一个简单的vxd及测试程序
					一个简单的vxd(Ctrl+C)及测试程序				 
							 | 
	|
					
  | 
	
| 
			 沙发# 
								发布于:2002-12-22 12:42				
			
					真的是c的虚拟键值吗?
 
							我在msdn上查的c的键值是43啊, 在vxd里是46了.为什么啊!!  | 
	|
					
						
  | 
	
| 
			 板凳# 
								发布于:2002-12-20 19:45				
			
					前面是判断hook.				 
							 | 
	|
| 
			 地板# 
								发布于:2002-12-20 15:41				
			
					前面return 了后面还可以吗?				 
							 | 
	|
					
						
  | 
	
| 
			 地下室# 
								发布于:2002-12-20 15:39				
			[quote]部分源码: 完全可以执行,我的应用程序就是监督它的. [/quote] 当真?汗,为什么?  | 
	|
					
						
  | 
	
| 
			 5楼# 
								发布于:2002-12-20 12:31				
			部分源码: 完全可以执行,我的应用程序就是监督它的.  | 
	|
| 
			 6楼# 
								发布于:2002-12-20 11:19				
			部分源码: 你说呢?当然不能了,faint。vxd用的就是C嘛。 :D  | 
	|
					
						
  | 
	
| 
			 7楼# 
								发布于:2002-12-20 11:16				
			dout要输出的东西会在什么地方显示?谢谢 看dout输出可以用DriverMonitor 或dbgview 你的ctrl-c不是用的是c的scan code 吗? 如果去掉这句话不会出错。是屏蔽盖键值。 对ctrl_shift_alt,屏蔽和取消可以在别的地方实现,不用在reflectToVM也是可以的,想想就知道了 :D  | 
	|
					
						
  | 
	
| 
			 8楼# 
								发布于:2002-12-20 09:10				
			
					部分源码:
 
							BOOL GxgadadDevice::OnSysDynamicDeviceInit() { pCC=new XCtrlCEvent(); if(pCC) return pCC->hook(); else return FALSE; vxdstop=1; //请问这两个语句能够被执行吗? return TRUE; }  | 
	|
					
						
  | 
	
| 
			 9楼# 
								发布于:2002-12-19 19:05				
			
					dout要输出的东西会在什么地方显示?谢谢
 
							怎么vxd的虚拟键值和vc里的不一样啊,在哪有各个键的对应键值啊!!谢谢! reflectToVM(Get_Cur_VM_Handle(), shift); 是将消息传递到虚拟机中,假如把这句去掉不就等于屏蔽这个键值了吗?如果去掉的话,是不是会出错?  | 
	|
					
						
  | 
	
| 
			 10楼# 
								发布于:2002-12-19 01:19				
			
					估计静态的vxd更难解决。
 
							主要问题:接收到信号后,想不出如何进一步处理。  | 
	|
| 
			 11楼# 
								发布于:2002-12-19 01:17				
			
					ctrl+alt+del我试过多次,没解决!!!				 
							 | 
	|
| 
			 12楼# 
								发布于:2002-12-18 09:24				
			XCtrlCEvent::XCtrlCEvent() : 我曾经遇到一个问题,Ctrl_C我改为ctrl+alt+delete 当我reflectToVM时过几秒就蓝屏了,我一直也没解决这问题,你是试刊  | 
	|
					
						
  | 
	
| 
			 13楼# 
								发布于:2002-12-18 09:18				
			
					======Gong_XG=====
 
							请Gong_XG公布全部的源码,让我们见识,见识哦!  | 
	|
					
						
  | 
	
| 
			 14楼# 
								发布于:2002-12-17 20:04				
			
					XCtrlCEvent::XCtrlCEvent() :
 
							VHotKey(C_SCAN, SCAN_NORMAL, HKSS_Ctrl, CallOnPress) {} VOID XCtrlCEvent::handler(BYTE scan, keyAction_t ka, DWORD shift, PVOID refData, DWORD elapased) { //dout << \"Ctrl-C detected\" << endl; vxdstop=0; reflectToVM(Get_Cur_VM_Handle(), shift); }  | 
	|
| 
			 15楼# 
								发布于:2002-12-17 20:03				
			
					部分源码:
 
							BOOL GxgadadDevice::OnSysDynamicDeviceInit() { pCC=new XCtrlCEvent(); if(pCC) return pCC->hook(); else return FALSE; vxdstop=1; return TRUE; } BOOL GxgadadDevice::OnSysDynamicDeviceExit() { delete pCC; return TRUE; }  | 
	|