我的程序在接收到按键后, 我调用如下函数:
SetWindowPos(HWND_TOP,50,50,200,200,SWP_NOZORDER);
SetForegroundWindow( );
SetActiveWindow( );
BringWindowToTop( );虽然都能将我的窗口调出来, 但原来运行的程序却最小化了. 
如何才能做到像游戏外挂那样调出窗口却游戏窗口不变?

解决方案 »

  1.   

    to:  alen_ghl(东方求*) 
    设置弹出窗口为当前窗口的子窗口??
    我取到了当前窗口的句柄, 如何设置能给点代码吗?
      

  2.   

    HWND SetParent(
        HWND hWndChild,
        HWND hWndNewParent
    );
    把游戏窗口设置为你的弹出窗口的父窗口试试。
      

  3.   

    to:  kugou123(酷狗)(君看一叶舟,出没风波里)
         我把当前窗口设置为你的弹出窗口的父窗口后, 用BringWindowToTop()和SetActiveWindow()函数都没能把窗口调出来. 你有什么方法吗? 谢谢!
      

  4.   

    to: handsomerun(毛毛)
        你这个建议是很有想象力, 可是我的对话框本来就是DoModal()过了, 再次调DoModal()就报错了, 我先隐藏再显示在游戏模式下还是显示不出来.
      

  5.   

    可以把  用SetWindowsPos()中Z-Order参数
      

  6.   

    to: a112319124728(彪) 
        窗口可以调出来,但原来的窗口最小化了, 不能像游戏外挂那样调出来,游戏还在.
      

  7.   

    设置为子窗口后而直接DoModal()后,不需要这些代码
    SetForegroundWindow( );
    SetActiveWindow( );
    BringWindowToTop( );
    应该就能达到目的啊
      

  8.   

    to  alen_ghl(东方求*) ;     我是VC新手, 我有点不明白. 我本来就只有一个窗口, 本来就已经DoModal()过了,
    我再用DoModal()就报错了, 请问该怎么做
      

  9.   


    SetForegroundWindow( );去掉试试
      

  10.   

    SetWindowPos(HWND_TOP,50,50,200,200,SWP_NOZORDER);
    SetForegroundWindow( );
    SetActiveWindow( );
    BringWindowToTop( );
    还有设为子窗口, 我都是单个的试过,也组合用过,
    能调出来, 但游戏窗口会最小化.
      

  11.   

    SetWindowPos(HWND_TOP,50,50,200,200,SWP_NOZORDER);这个不对,去掉SWP_NOZORDER
      

  12.   

    to goodboyws(深夜不眠者) :  我试了一下没弹出来, 可能是我写得不对. 你这样用过吗? 代码是怎么样的?
      

  13.   

    你调用完后。
    再给那个窗口发送一个
    SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE,0)的消息呀或者
    BOOL ShowWindow(          HWND hWnd,
        int nCmdShow//SW_MAXIMIZE
    );