zhoumc
驱动牛犊
驱动牛犊
  • 注册日期2006-07-13
  • 最后登录2008-11-25
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望88点
  • 贡献值0点
  • 好评度80点
  • 原创分0分
  • 专家分0分
20楼#
发布于:2007-01-28 10:57
都是受苦受难的兄弟,大家互相帮助吧!
orangeman198211
驱动牛犊
驱动牛犊
  • 注册日期2007-04-12
  • 最后登录2009-02-11
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望18点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
21楼#
发布于:2007-04-12 11:57
各位大哥,为什么我执行KeyboardProcEx =(HOOKPROC) GetProcAddress(g_hHookApiDLL, _T("LLKeyboardHookCallbackFunction"));后,keybordprocEx值仍然为空呢?急用。
orangeman198211
驱动牛犊
驱动牛犊
  • 注册日期2007-04-12
  • 最后登录2009-02-11
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望18点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
22楼#
发布于:2007-04-12 12:12
请问一下zhoumc 大哥,键盘钩子Source.cpp里面的函数ActivateHook怎么调用啊?谢谢了。急啊。
wince_lover
驱动中牛
驱动中牛
  • 注册日期2007-01-10
  • 最后登录2010-12-20
  • 粉丝0
  • 关注0
  • 积分1103分
  • 威望735点
  • 贡献值2点
  • 好评度279点
  • 原创分1分
  • 专家分0分
23楼#
发布于:2007-04-23 17:37
其实不需要这么麻烦的,用RegisterHotKey注册系统热键,就可以实现类似的功能了
saint_bxg
驱动小牛
驱动小牛
  • 注册日期2006-08-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望284点
  • 贡献值0点
  • 好评度257点
  • 原创分0分
  • 专家分0分
24楼#
发布于:2007-04-26 11:36
请教wince_lover兄弟:
RegisterHotKey注册系统热键如何做呢。我是想在系统中直接就做好,像PC机上,按下ctl+alt+delete就弹出任务管理器,但是没有头绪。比如RegisterHotKey使用啦,应该在系统哪个地方修改之类的,可以给点意见吗。谢谢!
努力! 成功就在不远处....
wince_lover
驱动中牛
驱动中牛
  • 注册日期2007-01-10
  • 最后登录2010-12-20
  • 粉丝0
  • 关注0
  • 积分1103分
  • 威望735点
  • 贡献值2点
  • 好评度279点
  • 原创分1分
  • 专家分0分
25楼#
发布于:2007-04-26 13:46
我是加到SHELL里的,在SHELL里注册几个系统热键(在初始化时调用RegisterHotKey(this->GetSafeHwnd(),VOLUME_INC_ID,0,HMI_VK_VOLUME_INC);),只要按了这几个键,SHELL会产生WM_HOTKEY消息,你在消息函数里处理就可以了。
saint_bxg
驱动小牛
驱动小牛
  • 注册日期2006-08-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望284点
  • 贡献值0点
  • 好评度257点
  • 原创分0分
  • 专家分0分
26楼#
发布于:2007-04-26 22:18
谢谢wince_lover兄弟的回复!
但很惭愧,对于SHELL不基本不了解。能否讲的再详细些,RegisterHotKey应该在哪个文件里添加?消息处理函数又该放在哪里,如何跟具体应用像给合呢?比如说,我按下 ctrl+down系统音量就会降低。
 
努力! 成功就在不远处....
wince_lover
驱动中牛
驱动中牛
  • 注册日期2007-01-10
  • 最后登录2010-12-20
  • 粉丝0
  • 关注0
  • 积分1103分
  • 威望735点
  • 贡献值2点
  • 好评度279点
  • 原创分1分
  • 专家分0分
27楼#
发布于:2007-04-28 13:52
我是自己写的SHELL,是基于对话框的程序,我把RegisterHotKey,加在OnInitDialog中的,可以用RegisterHotKey(this->GetSafeHwnd(),VOLUME_DEC_ID,MOD_CONTROL,VK_DOWN);注册。VOLUME_INC_ID你可以自己定义的(0xC000 -0XFFFF)。然后实现自己的消息函数
LRESULT CShellDlg::OnHotKey(WPARAM wParam,LPARAM lParam)
{

    switch(wParam)
    {
        case VOLUME_DEC_ID:
            SetSystemVol;
            break;
    }
    return 0;

}

如果你用的是系统的标准SHELL可以参照上面的方法加上,或者自己创建一个应用程序,加上响应热键,让他自动运行,然后隐藏起来,应该也可以吧,你可以试试
saint_bxg
驱动小牛
驱动小牛
  • 注册日期2006-08-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望284点
  • 贡献值0点
  • 好评度257点
  • 原创分0分
  • 专家分0分
28楼#
发布于:2007-04-29 09:48
多谢wince_lover兄!
努力! 成功就在不远处....
king_sundi
驱动牛犊
驱动牛犊
  • 注册日期2006-07-31
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望238点
  • 贡献值1点
  • 好评度54点
  • 原创分0分
  • 专家分5分
29楼#
发布于:2007-09-18 09:33
顶,参考下
上一页 下一页
游客

返回顶部