向游戏窗口发送按键消息,为何有的不起作用?

lori227 2008-04-12 01:45:08
用PostMessage函数给游戏窗口发送按键消息,如按下F1,在有的游戏会有用,在有的游戏却不会有效果,是游戏本身有屏蔽掉这类消息吗?
...全文
283 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lori227 2008-04-12
  • 打赏
  • 举报
回复

static DWORD dwSpaceCount = 0;
static bool isKeyDown = false;
if(isKeyDown == false)
{
for(int i = 0 ; i < NUM ; ++i)
{
if(iKey[i] != 0)
{
ERROR_MSG("KeyDown, Key = %X", iKey[i]);
if(PostMessageA(hWnd,WM_KEYDOWN,iKey[i],0) != 0)
{
ERROR_MSG("Success");
}
}
}
//設置按鍵已經被按下
isKeyDown = true;
dwSpaceCount = m_pSystem->m_dwSysCount + 500;
}

if(m_pSystem->m_dwSysCount < dwSpaceCount)
{
return false;
}

if(isKeyDown == true)
{
for(int i = NUM - 1 ; i >= 0 ; --i)
{
if(iKey[i] != 0)
{
ERROR_MSG("KeyUp, Key = %X", iKey[i]);
if(PostMessageA(hWnd, WM_KEYUP, iKey[i], 0) != 0)
{
ERROR_MSG("Success");
}
}
}
//設置按鍵已經被彈起
isKeyDown = false;
dwSpaceCount = 0;
}

dwTimeslot = m_pSystem->m_dwSysCount + riTimeOut * 1000;
return true;



發送成功應該是返回非0值吧,我有調試,都是執行到 ERROR_MSG("Success");
星羽 2008-04-12
  • 打赏
  • 举报
回复
你确定消息发出去了吗?

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧