首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

给送消息到当前活动窗口解决方法

2012-02-01 
给送消息到当前活动窗口我写的代码是这样的:hWindow GetForegroundWindow()switch( pElements-pProper

给送消息到当前活动窗口
我写的代码是这样的:
  hWindow = GetForegroundWindow();
switch( pElements->pProperties->vValue.ulVal )
{
case VID_LEFT:
SendMessage( hWindow, WM_KEYDOWN, VK_LEFT, 0 );
SendMessage( hWindow, WM_KEYUP, VK_LEFT, 0 );
break;
case VID_RIGHT:
SendMessage( hWindow, WM_KEYDOWN, VK_RIGHT, 0 );
SendMessage( hWindow, WM_KEYUP, VK_RIGHT, 0 );
break;
}

用GetForegroundWindow我在spy++中看好象是对的
不过不知道为什么消息发不过去,比如是资源管理器的窗口

[解决办法]
我写的代码是这样的: 
hWindow = GetForegroundWindow(); 
switch( pElements- >pProperties- >vValue.ulVal ) 

case VID_LEFT: 
SendMessage( hWindow, WM_KEYDOWN, VK_LEFT, 0 ); 
SendMessage( hWindow, WM_KEYUP, VK_LEFT, 0 ); 
break; 
case VID_RIGHT: 
SendMessage( hWindow, WM_KEYDOWN, VK_RIGHT, 0 ); 
SendMessage( hWindow, WM_KEYUP, VK_RIGHT, 0 ); 
break; 


用GetForegroundWindow我在spy++中看好象是对的 
不过不知道为什么消息发不过去,比如是资源管理器的窗口
======================
你可以发送一个简单的消息,测试一下,有没有发送过,如窗口最大化,最小化或关闭什么的消息.
如果发送过去了,就说明你的SendMessage( hWindow, WM_KEYDOWN, VK_LEFT, 0 ); 
SendMessage( hWindow, WM_KEYUP, VK_LEFT, 0 ); 有问题.

热点排行