Msi insaller передает параметр из командной строки для Set Service Login - PullRequest
1 голос
/ 28 июля 2011

Средство создания установщика : Microsoft Visual Studio 2010, Установщик проекта

Я пытаюсь передать имя пользователя и пароль для установщика, который будет использоваться для запуска служб Windows, которые будут установлены установщиком. По умолчанию установщик спрашивает учетные данные во время установки, которые я хочу передать через командную строку. см. прикрепленное изображение Set Service Login dialog during installation Я попытался решение, которое предусмотрено в следующем вопросе. Но все равно получаю диалоговое окно «Set Service login» во время установки.

msiexec / i setup.msi ИМЯ ПОЛЬЗОВАТЕЛЯ = ПАРОЛЬ ваше имя пользователя = ваш пароль

Как передать аргументы командной строки в установщик MSI

1 Ответ

1 голос
/ 04 марта 2016

Необходимо изменить дизайн установки с помощью этой http://www.codeproject.com/Articles/16767/How-to-Pass-Command-Line-Arguments-to-MSI-Installe aticle

Я использую дополнительную для логики класса установщика:

public override void Install(IDictionary stateSaver)
    {
        if (!String.IsNullOrWhiteSpace(this.Context.Parameters["password"]))
        {
            this.QualsMetricsSchedulerServiceInstaller.Password = this.Context.Parameters["password"];
            this.QualsMetricsSchedulerServiceInstaller.Username = this.Context.Parameters["user"];
        }
        else
        {
            this.Context.Parameters.Remove("user");
            this.Context.Parameters.Remove("password");
            this.QualsMetricsSchedulerServiceInstaller.Password = null;
            this.QualsMetricsSchedulerServiceInstaller.Username = null;
        }
        base.Install(stateSaver);
    }

И CustomActionData: / USERNAME = "[USERNAME]"/ PASSWORD = "[ПАРОЛЬ]" Теперь можно установить вручную, а для автоматической установки используйте msiexec / i QualsScheduler.msi / qb username =. \ Gavrishdv password = ***

...