有CommandLineToArgvW()
函数,即CommandLineToArgv
+ W
,其中W
表示宽字符(在C/C ++中为wchar_t
),但应该存在的CommandLineToArgvA()
函数,如GetCommandLineW()
和GetCommandLineA()
,显然并不存在。
字符:
int argv;
char **argv = CommandLineToArgvA(GetCommandLineA(), &argc);
宽字符:
int argv;
wchar_t **wargv = CommandLineToArgvW(GetCommandLineW(), &argc);
嗯,我在互联网上搜遍了每个角落,最多的是Linux Wine中的这个函数......我想知道,这个函数存在吗,如果存在,"隐藏"正常吗?否则,它真的不存在吗?
1条答案
按热度按时间pprl5pva1#
我不认为你应该尝试解析你自己的命令行字符串。Windows只做一种方式。试图编写重复的代码来做同样的事情是错误的。
只需获取命令行,然后使用Window工具将其转换为UTF-8。
获得一个
argv
,就像main()
得到的一样,最后有一个NULL
元素,并且是可写的。接口很简单。当你完成它的时候不要忘记
free()
结果。示例用法:好好享受吧!