正确使用CommandLineToArgvW?

时间:2013-11-21 03:27:48

标签: c++ winapi

解析路径包含空格的进程的命令行参数时,CommandLineToArgvW将路径拆分为多个部分。

所有Windows'C:驱动器上都有一个名为“Program Files。”的文件夹。

...笏

MSDN页面没有提到这是一个问题。我只是使用了错误的功能吗?我怎么能预测哪些词是路径的一部分呢?

1 个答案:

答案 0 :(得分:2)

CommandLineToArgvW拆分空格行 - 如果你需要一个参数(或程序名)来包含空格,你需要用引号括起来。

  • C:\Program Files - argv [0] = C:\ Program ,argv [1] = 文件
  • "C:\Program Files" - argv [0] = C:\ Program Files

请注意,您可以使用GetModuleFileName获取进程的文件路径 - 您可以执行此操作以确定路径是否包含空格,并在解析之前根据需要在命令行中插入引号。