当前位置:   article > 正文

GetCommandLine CmdLineToArgvW

getcommandline函数

说明:
LPTSTR GetCommandLine(VOID);

LPWSTR * CommandLineToArgvW(
                                                             LPCWSTR lpCmdLine,  // pointer to a command-line string
                                                             int *pNumArgs       // receives the argument count
                                                           );

使用GetCommandLine函数的返回值是一个程序的命令行,包括进程本身和所有的参数。他和winmain函数的lpCmdLine值是一样的,至于在main函数中,由于main函数可以带argc  ,argv参数。这两个参数,argc表示函数的参数,至少为1,argv是二级指针,里面存有所有的参数列表。当argc为1时,argv存储的是函数本身的路径。但main函数里的参数都是ANSI版本的,为了得到对应的Unicode版本的参数列表,所以有了CommandLineToArgvW函数,使用CommandLineToArgvW可以得到相同的效果。只不过是Unicode版本。
例如,可以这样调用:
  

int dwArgcs = 0;
    LPWSTR *pStr = CommandLineToArgvW(GetCommandLine(), &dwArgcs);

则,dwArgcs就相当于main函数中的argc,pStr就相当于main函数中的argv。
不过要注意了,

CommandLineToArgvW 返回的指针指向的地址空间是在函数内部所分配的,所以,最后的调用GlobalFree释放空间

转载于:https://www.cnblogs.com/priarieNew/p/9754793.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/467154
推荐阅读
相关标签
  

闽ICP备14008679号