rt
我的程序将调用系统的桌面显示属性的窗口,此时显示属性的那个窗口为当前的活动窗口,我想向这个窗口发送键盘的VK_RETURN(因为里面有确定按钮),请问如何获得当前活动窗口的句柄,并向其发送键盘消息啊?

解决方案 »

  1.   

    HWND hwnd;
    hwnd=::FindWindow(NULL,"test");
    ::SendMessage(hwnd,WM_KEYDOWN,VK_RETURN,NULL);
      

  2.   


      try this API 
      keybd_event                            vn
      

  3.   

    我知道什么原因了,窗口有确定按钮,但是并不代表按了回车,按钮会被按下,除非你当前的焦点就在那个按钮上,如果没有在的话,按回车是不会按到那个按钮的。
    假设窗口标题为test方法如下:
    HWND hWndMain=NULL;
    HWND hWndButton=NULL;
    hWndMain=::FindWindow(NULL,"test");
    hWndButton=::FindWindowEx(hWndMain,"确定");
    这样就得到了按钮的句柄了,然后用SendMessage方法
    ::SendMessage(BM_CLICK,0,0);   //用来模拟按钮被按下
      

  4.   

    楼上的试了   编译时出错
    E:\编程区\C++程序夹\try2\customwin.cpp(97) : error C2660: 'FindWindowExA' : function does not take 2 parameters
    E:\编程区\C++程序夹\try2\customwin.cpp(98) : error C2660: 'SendMessageA' : function does not take 3 parameters