cocos3.7打包window平台。启动参数如何获取

碰到一个问题想请教一下。cocos3.7打包window平台。启动参数如何获取,我看导出的项目中的main.cpp里面有传递
int SDL_main(int argc, char** argv) {
START_PLATFORM(argc, (const char**)argv);
}

int32_t UniversalPlatform::run(int argc, const char** argv) {
if (cocos_main(argc, argv) != 0) {
return -1;
}
return loop();
}
最后定位到这里,想请问,cocos_main会把这参数塞到哪里去,在cocos中用什么api获取到塞进去的参数

void Game::setArgumentsInternal(int argc, const char* argv[])
{
	cc::BaseGame::setArgumentsInternal(argc, argv);
	// todo 能在这里干些事
}

// YouProject\native\engine\common\Classes

也可以

CC_CURRENT_APPLICATION()->getArguments();

获取参数,详见:\3d\engine\native\cocos\application\CocosApplication.cpp

C++示例:

const auto& args = CC_CURRENT_APPLICATION()->getArguments();
for (int i = 0; i < args.size(); ++i)
{
	CC_LOG_DEBUG("Arguments[%d]=%s", i, args[i].c_str());
}

TypeScript示例:

import { native } from 'cc';
if (native && native.process) {
    log('PlayerController start argv:', native.process.argv);
}
1赞

太感谢了。帮忙解决大问题了。文档里没写 自己又找不到。感谢感谢

您好,又来请教您,请问C++这边怎么设置启动的时候全屏显示呢。

Game.cpp里创建窗口时增加参数:CC_WINDOW_FULLSCREEN

int Game::init() {
  _windowInfo.title = GAME_NAME;
  _windowInfo.flags = cc::ISystemWindow::CC_WINDOW_FULLSCREEN;
  // ..............
}

谢谢 :laughing:

你好大神还有个问题请教,现在打包PC端出现一个问题有解决方案吗。就是描边不生效。有什么办法解决吗。

你说的是字体描边不生效?
这个要具体问题具体分析下

嗯 字体描边在原生平台上不生效。我看好多人说了这个问题,请教下有解决方案吗

怎么不用这个


打包exe

您好大神我又来了…我想关闭掉构建的程序的左上角的最小化按钮和最大化按钮,请问有什么方法吗。确实找不到

兄弟,你的启动参数搞定了吗?