Как передать пробел и двойную кавычку вместе в параметрах командной строки MSI?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как передать пробел и двойную кавычку вместе в параметрах командной строки MSI?

Сообщение Anonymous »

Я пытаюсь установить настольное приложение через командную строку. Приложение поставляется с установочным пакетом, например setup.exe, который был создан с помощью InstallShield.
Я использую этот setup.exe для установки приложения. передавая параметры MSI непосредственно в MSI через командную строку. Для справки:

Код: Выделить всё

setup.exe/s /v"/l*V installer.log INSTALLDIR="""C:\Program Files\Diagnostic manager""" INSTANCE=\"SD-WIN8-02\" REPOSITORY=\"Repository1\" SERVICEUSERNAME=\"SD-WIN8-02\testuser\" SERVICEPASSWORD="/7c2'==V@:~U-L%~*.Rv}CvBV'HHzyAq~'5NGA=" CLUSTERINSTALL=0 SETUPTYPE=Typical ApplicationUsers=AllUsers ALLUSERS=1 /qn"
Ожидается, что параметр SERVICEPASSWORD будет иметь значения, содержащие пробел, двойные кавычки или и то, и другое. Соответственно, должны быть приняты следующие четыре сценария пароля:
  • без пробела и без двойных кавычек (/7c2'==V@:~U-L%~* .Rv}CvBV'HHzyAq~'5NGA=)
  • без пробела и в двойных кавычках (/7c2'==V@:~U-L%~*.Rv}CvB"V'HHzyAq~'5NGA=)
  • с пробелом и без двойных кавычек (/7c2'== V@:~U-L%~*.Rv}CvB V'HHzyAq~'5NGA=)
  • с пробелом и двойными кавычками (/7c2'==V@:~U-L%~*.Rv}CvB V'H"HzyAq~'5NGA=)
Для этих я пробовали:
Первый сценарий сработал успешно: /7c2'==V@:~U-L%~*.Rv}CvBV'HHzyAq~'5NGA=
Второй сценарий сработал после экранирования двойной кавычки обратной косой чертой: /7c2'==V@:~U-L%~*.Rv}CvB\"V'HHzyAq~'5NGA=
Третий сценарий работал, когда значение было заключено в экранированные двойные кавычки: \"/7c2'==V@:~U-L%~*.Rv}CvB V'HHzyAq~'5NGA=\"
Однако объединить обе корректировки для четвертого сценария (пробелы + двойные кавычки) не удалось: \"/7c2'==V@ :~U-L%~*.Rv}CvB V'H\"HzyAq~'5NGA=\"
Как изменить параметр SERVICEPASSWORD, чтобы обеспечить пространство и двойные кавычки передаются правильно в этом четвертом сценарии?
Я ищу общее решение, которое надежно поддерживает все четыре сценария.
Неудачные попытки:



пароль (пробел + двойная кавычка)
ВВОД




/7c2'==V@:~U-L%~*.Rv }CvB V'H"HzyAq~'5NGA=
"/7c2'==V@:~U-L%~*.Rv}CvB V'H\"HzyAq~'5NGA="


/7c2'==V@:~U-L%~* .Rv}CvB V'H"HzyAq~'5NGA=
\"/7c2'==V@:~U-L%~*.Rv}CvB V'H"HzyAq~'5NGA=\"


/7c2'==V@:~U-L%~* .Rv}CvB V'H"HzyAq~'5NGA=
\"/7c2'==V@:~U-L%~*.Rv}CvB V'H\\\"HzyAq~'5NGA=\"




Подробнее здесь: https://stackoverflow.com/questions/793 ... parameters
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Регулярное выражение | PHP фиксирует каждую недопустимую двойную кавычку в строке json
    Гость » » в форуме Php
    0 Ответы
    41 Просмотры
    Последнее сообщение Гость
  • Как вставить двойную кавычку (") в поле Varchar базы данных SQLite?
    Anonymous » » в форуме Android
    0 Ответы
    48 Просмотры
    Последнее сообщение Anonymous
  • Как проанализировать двойную кавычку в начале поля в CSV, используя jackson-dataformat-csv CsvMapper
    Гость » » в форуме JAVA
    0 Ответы
    33 Просмотры
    Последнее сообщение Гость
  • Не могу обновить nvidia, потому что отсутствует vc_runtimeminimum_x86.msi и questiMtes vc_runtimeadditional_x86.msi [зак
    Anonymous » » в форуме C++
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Пробел в аргументе командной строки в Java
    Anonymous » » в форуме JAVA
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»