想在键盘上做一个热键,可轮巡式切换现有的应用程序,类似ALT+TAB的功能,该如何实现?请教源码或实例。

解决方案 »

  1.   

    首先找到系统中运行的程序的窗口
    然后通过一个热键来设置切换,每次将一个窗口load到最前面来
      

  2.   

    为什么我在编译EnumDesktopWindows(OpenDesktop(0,0,false,MAXIMUM_ALLOWED),(WNDENUMPROC)EnumWindowsProc,0);时报告error C2440: 'type cast' : cannot convert from '' to 'int (__stdcall *)(struct HWND__ *,long)'?换EnumDesktopWindows(EnumWindowsProc,0);也一样出错,是哪里需要设置吗?用过以下的回调函数定义,都不行。BOOL CALLBACK CTest::EnumWindowsProc(HWND hwnd,LPARAM lParam)
    BOOL __stdcall CTest::EnumWindowsProc(HWND hwnd,LPARAM lParam)
      

  3.   

    EnumDesktopWindows(OpenDesktop(0,0,false,MAXIMUM_ALLOWED),(WNDENUMPROC)EnumWindowsProc,(LPARAM)0);
      

  4.   

    to laiyiling:
    仍然是上面的错误提示,应该是对(WNDENUMPROC)EnumWindowsProc这个参数的,因为我去掉(WNDENUMPROC)之后提示
    error C2664: 'EnumDesktopWindows' : cannot convert parameter 2 from 'int (void)' to 'int (__stdcall *)(struct HWND__ *,long)'
      

  5.   

    你看看EnumWindowsProc的原型定义要求。
      

  6.   

    定义看过了,仍然不知道自己错在哪里。
    目的就是实现ALT+ESC的效果,模拟键盘消息我会,是想学学更基本的方法。
    这帖也该结了。