为什么我家里的跑跑卡丁车不能窗口化

作者&投稿:贯宙 (若有异议请与网页底部的电邮联系)
首先,你的显卡可能需要升级,是显卡!不是驱动哦.
其次,你的显示器有可能是宽屏的,因为游戏只支持800*600的默认桌面,所以美办法切换.
最后,是由于您的显示器分辨率设置问题.建议你在把显示器分辨率设置到1280*764进行游戏,看看默认进入后能否切换.

你的显示器分辨率是 800×600 吧,一般网络游戏在 1024×768 分辨率运行的话,窗口模式就是 800×600 ,如果本身就是这个分辨率,那么没法变成窗口模式!

显卡驱动的问题。重新安装显卡驱动,再不行就重新安装跑跑卡丁车

按一下之后等一会儿,那是因为机器慢,正在运行,按两下就是最小化,最小化快
(有可能)

显卡!

显卡有问题

跑跑卡丁车怎样窗口化~

  要修改文件是一个游戏程序的DLL,这个游戏的方式有点让人想起来,那个《剑侠情缘》也是这样的风格,还有《大话西游》也是这样的风格,什么风格呢?很简单的,就是主程序在DLL中,而EXE只是负责加载而已!

  觉得发这样的贴有点没水平了,不过,通常这样的最实用吧:)!


  简要说明一下:
  游戏主要加速有两类:一是OpenGL,二是DirectX
  而现在不知道怎么滴国产游戏都是后着,我们熟悉一下后者:

  /-----------------------------------------------------------------------------------------
  我们看到3D类游戏都要用到的一部分初始化,而熟悉这类编程的都说很简单的东西哦!

  HRESULT CPNDX::InitD3D(HWND hWd)
  {
  hWnd=hWd;
  // 创建D3D对象
  if( NULL == ( g_pD3D = Direct3DCreate8( D3D_SDK_VERSION ) ) )
  return E_FAIL;

  // 获取当前的显示模式
  D3DDISPLAYMODE d3ddm;
  if( FAILED( g_pD3D->GetAdapterDisplayMode( D3DADAPTER_DEFAULT, &d3ddm ) ) )
  return E_FAIL;

  D3DPRESENT_PARAMETERS d3dpp;
  ZeroMemory( &d3dpp, sizeof(d3dpp) );

  d3dpp.Windowed = TRUE; // 窗口模式
  d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; // 设置交换模式
  d3dpp.BackBufferWidth = d3ddm.Width;
  d3dpp.BackBufferHeight = d3ddm.Height;
  d3dpp.BackBufferFormat = d3ddm.Format; // 设置背景缓冲区格式为当前左面格式
  d3dpp.EnableAutoDepthStencil = TRUE; // 打开深度缓冲zbuffer
  d3dpp.AutoDepthStencilFormat = D3DFMT_D16; // 深度缓冲格式

  // 创建D3D设备
  // 第一个参数:使用默认的显卡适配器
  // 第二个参数:请求使用硬件抽象层(HAL)
  // 第三个参数:窗口句柄
  // 第四个参数:使用软件处理顶点
  // 第五个参数:创建的参数
  // 第六个参数:创建的D3D设备指针
  if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT,
  D3DDEVTYPE_HAL,
  hWnd,
  D3DCREATE_SOFTWARE_VERTEXPROCESSING,
  &d3dpp,
  &g_pd3dDevice ) ) )
  {
  return E_FAIL;
  }

  // 关闭culling,让我们能看到3角型的正反面
  g_pd3dDevice->SetRenderState( D3DRS_CULLMODE, D3DCULL_NONE );

  // 打开ZBUFFER
  g_pd3dDevice->SetRenderState( D3DRS_ZENABLE, TRUE );

  // Turn off D3D lighting
  g_pd3dDevice->SetRenderState( D3DRS_LIGHTING, FALSE );

  return S_OK;
  }
  /---------------------------------------------------------------------------------------------------

  我们注意的地方是:GetAdapterDisplayMode这个函数全屏幕一般不需要,一般都是枚举
  而窗口化是必须要的,如果不要这个函数也可以,那就必须自己初始化D3DDISPLAYMODE结构才可以。
  比如:
  //前面用其他函数给它初始化了宽和高,那么后面还要初始化屏幕格式和刷新频率。才能窗口化!
  d3ddm.Format =D3DFMT_R5G6B5;
  d3ddm.RefreshRate=0x3C;


  把前面的D3DPRESENT_PARAMETERS d3dpp这个结构赋值修改如下:
  d3dpp.Windowed = FALSE;
  d3dpp.BackBufferCount = 1;
  d3dpp.BackBufferFormat = d3ddm.Format;
  d3dpp.BackBufferWidth = d3ddm.Width;
  d3dpp.BackBufferHeight = d3ddm.Height;
  d3dpp.hDeviceWindow = hWnd;
  d3dpp.SwapEffect = D3DSWAPEFFECT_COPY_VSYNC; //这个也是必须的,不然屏幕会闪烁。
  d3dpp.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
  d3dpp.FullScreen_PresentationInterval = D3DPRESENT_INTERVAL_ONE;

  简要说完了,大家还是不太清楚就查查资料吧!没说太难,就通俗点说一下!
  /----------------------------------------------------------------------------------------------------

  下面的就简单了:
  我们来看一下,把一个程序反汇编会是什么样子:
  //很容易就发现这个了:
  00406FD0 |. 68 DC000000 push 0DC
  00406FD5 |. E8 987F0300 call

  ==============================
  g_pD3D = Direct3DCreate8( D3D_SDK_VERSION ); //也就是这一句了
  /-----------------------------------------------------------------

  //再往下就看到了这两句:
  0040709D |> \C745 F8 17000>mov dword ptr [ebp-8], 17
  004070A4 |. C745 F4 3C000>mov dword ptr [ebp-C], 3C

  ==================================
  d3ddm.Format =D3DFMT_R5G6B5;
  d3ddm.RefreshRate=0x3C;

  /------------------------------------------------------------------
  //再往下看就到了一个结构,关建的是这个结构:
  004070BB |. C745 D4 01000>mov dword ptr [ebp-2C], 1
  004070C2 |. C745 C4 01000>mov dword ptr [ebp-3C], 1
  004070C9 |. 8B55 F8 mov edx, dword ptr [ebp-8]
  004070CC |. 8955 C0 mov dword ptr [ebp-40], edx
  004070CF |. 8B45 EC mov eax, dword ptr [ebp-14]
  004070D2 |. 8945 B8 mov dword ptr [ebp-48], eax
  004070D5 |. 8B4D F0 mov ecx, dword ptr [ebp-10]
  004070D8 |. 894D BC mov dword ptr [ebp-44], ecx
  004070DB |. 8B55 08 mov edx, dword ptr [ebp+8]
  004070DE |. 8955 D0 mov dword ptr [ebp-30], edx
  004070E1 |. C745 CC 04000>mov dword ptr [ebp-34], 4
  004070E8 |. C745 E4 00000>mov dword ptr [ebp-1C], 0
  004070EF |. C745 E8 00000>mov dword ptr [ebp-18], 0

  /------------------------------------------------------------------------------------------------
  //再往下我们认识一个函数:
  004070F8 |. 6A 47 push 47
  004070FA |. 6A 01 push 1
  004070FC |. 6A 02 push 2
  004070FE |. 8B45 F8 mov eax, dword ptr [ebp-8]
  00407101 |. 50 push eax
  00407102 |. 6A 01 push 1
  00407104 |. 6A 00 push 0
  00407106 |. 8B4D FC mov ecx, dword ptr [ebp-4]
  00407109 |. 8B51 04 mov edx, dword ptr [ecx+4]
  0040710C |. 8B45 FC mov eax, dword ptr [ebp-4]
  0040710F |. 8B48 04 mov ecx, dword ptr [eax+4]
  00407112 |. 8B01 mov eax, dword ptr [ecx]
  00407114 |. 52 push edx
  00407115 |. FF50 28 call dword ptr [eax+28]

  =============================================================
  m_pD3D->CheckDeviceFormat(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3ddm.Format,
  D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D32)

  /---------------------------------------------------------------------------------------------------
  //还有一个关键函数:
  004071F3 |. 50 push eax
  004071F4 |. 8D4D B8 lea ecx, dword ptr [ebp-48]
  004071F7 |. 51 push ecx
  004071F8 |. 6A 20 push 20
  004071FA |. 8B55 08 mov edx, dword ptr [ebp+8]
  004071FD |. 52 push edx
  004071FE |. 6A 01 push 1
  00407200 |. 6A 00 push 0
  00407202 |. 8B45 FC mov eax, dword ptr [ebp-4]
  00407205 |. 8B48 04 mov ecx, dword ptr [eax+4]
  00407208 |. 8B55 FC mov edx, dword ptr [ebp-4]
  0040720B |. 8B42 04 mov eax, dword ptr [edx+4]
  0040720E |. 8B10 mov edx, dword ptr [eax]
  00407210 |. 51 push ecx
  00407211 |. FF52 3C call dword ptr [edx+3C]

  ===============================================================
  //Create a Direct3D device.
  if(FAILED(m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
  D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &m_pD3DDevice)))

  /----------------------------------------------------------------------------------------------------

  窗口化的结束了---------------

按F11
____________________________________________________________________
http://spaces.msn.com/jinluke321/
欢迎来我的blog

--------------------------------------------------------------------

跑跑卡丁车无法切换全屏与窗口模式,知道的请帮忙!
答:...进入游戏的时候`你按下F11```就可以了啊``为什么不行呢``然后在按下F11就恢复到全频```然后就不能在回到窗口了``一次游戏只能来回切换一次```多了就会退出游戏``我一直都是这样的`很好啊`没有像你说的那样会碰出游戏``你看看是不是你机子对F11设置了什么热键``如果有改下就好了``

跑跑卡丁车不能切换屏幕~
答:这个是游戏的BUG 一直存在的 应该你是比较掺的那种 每次都要出错 其实不管哪个机子 按多了 都会出错的。。!等他们更新吧

跑跑卡丁车窗口化不显示画面
答:最好是重新安装一个,实在不行重新下载一个。安装其实挺快的,几分钟的事!!实在不想重装的话就重启一下电脑说不定会行!

跑跑卡丁车进去过后一直是窗口模式而且还打不开?
答:可以进入安装跑跑卡丁车的目录下,将“NMService.exe”和“KartRider.exe ”,文件选中单击鼠标右键,选择以管理员方式运行,最后在属性里将其修改为“以XP SP2兼容方式运行”。五,也有可能是你的跑跑程序的某个文件让你错删了,你不妨把跑跑卸载了,然后重新安装一下。。希望能帮到你,祝你游戏愉快!

跑跑卡丁车和ET助手有冲突不能窗口化怎么办?
答:你首先把国泰君安的开机自动运行关掉!然后重起一下机器你再试试!

跑跑卡丁车为什么按F11便不了窗口
答:跑跑卡丁车不能窗口化的,只能最小化

跑跑卡丁车进去过后一直是窗口模式而且还打不开?
答:可以进入安装跑跑卡丁车的目录下,将“NMService.exe”和“KartRider.exe ”,文件选中单击鼠标右键,选择以管理员方式运行,最后在属性里将其修改为“以XP SP2兼容方式运行”。五,也有可能是你的跑跑程序的某个文件让你错删了,你不妨把跑跑卸载了,然后重新安装一下。。希望能帮到你,祝你游戏愉快!

跑跑卡丁车开启后总是窗口最小化
答:和软件有冲突吧,建议你把别的程序关了在说

求救,跑跑卡丁车一打开全屏就自动最小化隐藏,打不开啊!!
答:你好:很高兴能解答你的问题!你的问题可以寻求这样的解决办法1、按F11试试能不能窗口化 2、卸载你现在的跑跑,到官网重新下载3、估计是系统问题,现在一些笔记本电脑安装XP玩不了跑跑的,建议安装win7系统4、如果我的办法不能解决你的问题,建议你寻求“在线求助”的专家解答 ...

怎么样使跑跑卡丁车的游戏变成窗口
答:只能按一下F11 因为按一下就会成了窗口模式 如果再按一下就成了切换窗口错误然后就掉线了!