找到项目里的 $(projectDir)/proj.win32/main.cpp
宏定义里声明如下:
#define USE_WIN32_CONSOLE
函数修改如下:
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
// 这里是为了通过 bat 文件控制 Win32 游戏窗口大小
int w = 1600;
int h = 960;
LPWSTR *szArgList;
int argCount;
szArgList = CommandLineToArgvW(GetCommandLine(), &argCount);
for(int i = 0; i < argCount; i++)
{
wchar_t* ext = L"WinSize";
if (wcsstr(szArgList[i], ext))
{
w = _wtoi(szArgList[i+1]);
h = _wtoi(szArgList[i+2]);
break;
}
}
LocalFree(szArgList);
// alloc一个console
#ifdef USE_WIN32_CONSOLE
AllocConsole();
freopen("CONIN$","r",stdin);
freopen("CONOUT$","w",stdout);
freopen("CONOUT$","r",stderr);
#endif
// create the application instance
AppDelegate app;
CCEGLView* eglView = CCEGLView::sharedOpenGLView();
eglView->setViewName("zombie");
eglView->setFrameSize(w, h);
int ret = CCApplication::sharedApplication()->run();
// 释放 console
#ifdef USE_WIN32_CONSOLE
fclose(stderr);
fclose(stdout);
fclose(stdin);
FreeConsole();
#endif
return ret;
}