如何实现将全屏游戏切换为窗口型?如“奇迹英雄”把全屏显示的游戏变为窗口型的

解决方案 »

  1.   

    呵呵,没玩过,
    要是退出的话,我道知道Ese
    和其他应用程序切换的话Alt+Tab
      

  2.   

    BorderStyle := bsSizeable;
      Position := poScreenCenter;
      SetBounds(0,0,640,480);
      

  3.   

    sorry 搞错了
    var
      H: hwnd;
    begin
      H := findwindow(nil,pchar('加壳、脱壳程序'));
      if H >0 then
        //postmessage(H,wm_syscommand,SC_SIZE,0)
        setwindowpos(h,HWND_TOP,100,100,640,480,SWP_SHOWWINDOW or SWP_NOZORDER)
      else
        showmessage('not found');
    end;
      

  4.   

    Dx中的SetCooperativeLevel(窗口句柄,DDSCL_FULLSCREEN OR DDSCL_ALLOWMODEX OR DDSCL_EXCLUSIVE)
    设置为全屏模式
    SetCooperativeLevel(窗口句柄,DDSCL_NORMAL)设置为普通模式我用VB试过了,好旬
      

  5.   

    Dx中的SetCooperativeLevel(窗口句柄,DDSCL_FULLSCREEN OR DDSCL_ALLOWMODEX OR DDSCL_EXCLUSIVE)
    设置为全屏模式
    SetCooperativeLevel(窗口句柄,DDSCL_NORMAL)设置为普通模式
    ---------------------------估计不好用,因为exclusive and fullscreen模式下,可能程序要用surface flip,而window模式下就不性..所以用setcooperatevielevel来实现是不行的.
    我曾经用setparent()来试验过,但不时所有的程序都行...gz...
      

  6.   

    SetCooperativeLevel只能在初始化的时候用一次,DX7SDK如是说
      

  7.   

    用KeyBoardHook监控键盘操作和Windows消息队列,当按特定的键时Post窗口还原的消息。
    具体消息的名称我忘了,WindowsAPI帮助里有。
    还有一个办法:全屏效果不要用窗口最大化,而是把窗口设定成和屏幕一样大,按键时就改变窗口大小和窗口的边框,就可以实现相同的效果,但是本质不一样,这种做法比较简单,适合初学者使用。那些专项技术不外传的人就是贱!那屁点技术有什么保密的,上网一找一大堆。中国的软件发展不起来就是这帮混蛋搞的!大力支持D版和Free软件!
      

  8.   

    setparent()方法确实要以得到这个目的...不过我在光通传奇上使用该方法写的程序..可以使传奇的成窗口模式...但是屏幕还是改不过..分辨率还不有问题...不信话可以大家可以试试..一改过来就会显示不出来了..全蓝一片...
      

  9.   

    to lijinjie(风云乐神) 
    我要一份 谢谢了,
    [email protected]
      

  10.   

    给我一份吧!
    [email protected]
      

  11.   

    [email protected]
    谢谢,给我一份,希望能和你交流外挂技术:)
      

  12.   

    [email protected]  
    谢谢
      

  13.   

    [email protected]我也想编个外挂我在游戏中弹出窗口后,颜色变了, 整样能恢复原来窗体的颜色?
      

  14.   

    wingod(风神) :我也想要一份学习一下,谢谢了[email protected]
      

  15.   

    这个和dx什么的无关吧?一般的游戏肯定不是用的DELPHI的TFORM来建的窗体一般是用CreateWindowEx来创建窗体,返回一个句柄参数如下://创建一个窗体
       h_Wnd := CreateWindowEx(dwExStyle,   // 扩展窗体风格
          'OpenGL',                         // 类名
          WND_TITLE,                        // 标题
          dwStyle,                          // 窗体属性
          0, 0,                             // 窗体位置
          Width, Height,                    // 窗体大小
          0,                                // 没有父窗体
          0,                                // 没有菜单
          h_Instance,                       // 实例句柄
          Nil);                             // 不向WM_CREATE传递任何东东
    具体看置顶的那个,OPENGL的贴子,里面有详细的用法第一段就是设置一个 OpenGL窗口。它可以只是一个窗口或是全屏幕的、可以任意 大小、任意色彩深度。
      

  16.   

    回复人: wingod(风神) ( ) 信誉:100  2003-7-15 17:52:36  得分:0 
     
    送源程序的话,要份来学学,thanks!
    [email protected]
      

  17.   

    我也看看: [email protected]
      

  18.   

    请给俺一份学习学习 [email protected]
      

  19.   

    to:wingod(风神)
    给我也发一份,谢谢了~
    [email protected]
    关注~
      

  20.   

    [email protected]
    我也要一份,谢谢
      

  21.   

    [email protected]
    我也要一份,谢谢如果谁有的话,也请给我一份,谢谢!
      

  22.   

    好好学习学习 发一份给我好吗?
    [email protected]
      

  23.   

    [email protected]
    我也要一份,谢谢!
      

  24.   

    在我的记忆中,好像是有的游戏是无法设置成窗口模式的,这又好像是即使变成窗口模式也会显示不正常,不记得具体的了,不好意思,惭愧ing。
      

  25.   

    打扰各位,我想问一下有谁收到了 wingod(风神) 的MU窗口显示程序吗?
    是否能给我发一份,谢了!
    [email protected]
      

  26.   

    procedure TForm1.Timer1Timer(Sender: TObject);
    var
      MuWindow: HWND;
      WindowText: array[0..255] of char;
      ClassText: array[0..255] of char;
    begin
      MuWindow := GetForegroundWindow;
      GetClassName(MuWindow, ClassText, 255);
      if ClassText = 'MU' then
      begin
        Windows.SetParent(MuWindow, Handle);
        Timer1.Enabled := False;
      end;
    end;
      

  27.   

    给我也发一份,谢谢了~
    [email protected]
      

  28.   

    wingod(风神)兄弟,
    给我也发一份吧,谢谢先!!
    [email protected]
      

  29.   

    哈哈,对不起,忘了写邮箱了。[email protected]