eduwin 命令行参数 API

头文件:eduwin_cmd.h(或通过 eduwin.h 统一引用)

命令行参数解析模块,支持 --key value--flag--key="value with space" 等格式,自动调用 CommandLineToArgvW 完成解析。

示例

# 不传参运行
cmd_demo.exe

# 传参运行
cmd_demo.exe --visible --url https://www.bing.com
cmd_demo.exe --name MyApp --port 8080
cmd_demo.exe --help

初始化 / 清理

void cmd_init(void);
void cmd_cleanup(void);

cmd_init() 在程序最开头调用(init_app() 之前)。cmd_cleanup() 可选(进程退出自动回收)。

参数查询

int         cmd_has(const WCHAR *name);
const WCHAR *cmd_get(const WCHAR *name);
const WCHAR *cmd_get_def(const WCHAR *name, const WCHAR *def);
int         cmd_is(const WCHAR *name);
  • cmd_has(name) — 是否有该参数(包括开关和带值)
  • cmd_get(name) — 获取参数值(如 --url 的值),不存在返回 L""
  • cmd_get_def(name, def) — 同上,带默认值
  • cmd_is(name) — 检测无参开关(如 --headless--help),存在返回 1
cmd_init();

if (cmd_is(L"--help")) {
    cmd_print_help(L"AI Browser");
    return 0;
}

const WCHAR *url = cmd_get_def(L"--url", L"about:blank");
int port = _wtoi(cmd_get_def(L"--port", L"9099"));
int headless = cmd_is(L"--headless");

cmd_cleanup();

帮助信息

void cmd_print_help(const WCHAR *desc);

打印帮助信息到控制台。desc 为程序描述文字。帮助内容通过一个内部注册表自动生成。