Передача пробелов в аргументах для Visual Studio Pro 2019 - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь отладить программу командной строки внутри Visual Studio. Я делюсь своей конфигурацией с другой машиной, используя Box. Пути, которые я прохожу, содержат пробелы, и мне не удалось их избежать, так что вместо 3 аргументов я получаю 9. Это соответствующий раздел из оригинальной launch.vs.json.

{
  "type": "default",
  "project": "CMakeLists.txt",
  "projectTarget": "dispatcher.exe (src\\dispatcher\\dispatcher.exe)",
  "name": "dispatcher.exe (src\\dispatcher\\dispatcher.exe)",
  "args": [
    "C:\\Users\\212434537\\Box Sync\\Edge Agent\\srasku-windows.json",
    "C:\\Users\\212434537\\Box Sync\\Edge Agent\\static.json",
    "C:\\Users\\212434537\\Box Sync\\Edge Agent\\dynamic.json"
  ]
}

Ни одна из этих работ.

"\"C:\\Users\\212434537\\Box Sync\\Edge Agent\\srasku-windows.json\""
"\\"C:\\Users\\212434537\\Box Sync\\Edge Agent\\srasku-windows.json\\""
"\\\"C:\\Users\\212434537\\Box Sync\\Edge Agent\\srasku-windows.json\\\""
"\\\\"C:\\Users\\212434537\\Box Sync\\Edge Agent\\srasku-windows.json\\\\""

Как мне избежать пробелов, чтобы каждый аргумент передавался как один аргумент вместо трех. Примечание: я видел этот вопрос , но он не решил мою проблему.

1 Ответ

0 голосов
/ 04 мая 2020

Оказывается, вам нужно заключить пробелы в одинарные экранированные двойные кавычки:

Вот результирующий раздел:

   {
      "type": "default",
      "project": "CMakeLists.txt",
      "projectTarget": "dispatcher.exe (src\\dispatcher\\dispatcher.exe)",
      "name": "dispatcher.exe (src\\dispatcher\\dispatcher.exe)",
      "currentDir": "C:\\Users\\212434537\\source\\Edge-Agent",
      "args": [
        "C:\\Users\\212434537\\Box\" \"Sync\\Edge\" \"Agent\\srasku-windows.json",
        "C:\\Users\\212434537\\Box\" \"Sync\\Edge\" \"Agent\\static.json",
        "C:\\Users\\212434537\\Box\" \"Sync\\Edge\" \"Agent\\dynamic.json"
      ]
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...