Создайте настраиваемое действие в MSI для запуска команды «sc.exe» (которая установлена в WinXP и более новых системах). Если вы обеспокоены тем, что sc.exe может отсутствовать в системе, включите его в MSI, либо в двоичную таблицу, либо установите вместе с продуктом.
После того, как ваш MSI создаст сервис, попросите пользовательское действие выполнить следующее (измените для вашего собственного пользователя / пароль):
sc config the_service_name obj =
thedomain \ johndoe пароль = stackoverflow
Тем не менее, обратите внимание, что хранение пароля непосредственно в MSI в открытом виде является ОЧЕНЬ плохой идеей.
Простое (и простое) решение - использовать бесплатный инструмент CPAU для шифрования всей команды sc, указанной выше. Вы должны зашифровать эту команду (используя CPAU) из своей собственной системы, а затем передать эту зашифрованную строку в CPAU (которую вам необходимо будет включить в свой MSI или установить в системе - в своем настраиваемом действии). CPAU декодирует передаваемую вами строку, которая будет декодироваться в приведенной выше команде sc, и будет более надежно устанавливать имя пользователя и пароль в службе.