У меня есть Приложение Windows, которое я должен вызвать с настольным ярлыком и некоторыми параметрами командной строки.
Я сделал это тысячи времен, но этот несколько отличается. Вместо того, чтобы использовать нормальный параметр командной строки как -e 12345
или -example 12345
, это использование @12345
(запускающийся с @
символ).
Ярлыкам Windows не нравится этот параметр, прибывающий сразу после исполняемого имени, и это просто разделяет все. Я не знаю почему.
Например:
c:\example\example.exe @12345 -e9876
поскольку "цель", при сохранении, разделяет все параметры и листы просто c:\example\example.exe
как цель.
Но c:\example\example.exe -e9876 @12345
работает просто великолепно. Это сохраняет и проверяет, и все хорошо.
Однако мне нужно @
параметр, чтобы быть первым на команде. Кроме выполнения чего-то как обертывание команды в пакетном файле и вызова пакета, как я могу иметь @
символ быть первым параметром командной строки на ярлыке Windows?
Кто знал? ... Очевидно, Windows рассматривает символ @
как разделитель. Команды Windows интерпретируют только первый элемент в команде... поэтому она фактически усекает остальные. Очевидно, что можно изменить поведение, введя перед командой ^
символ escape.
т.е.
c:\example\example.exe ^@12345 -e9876