Создавал msi через MSI Package Builder Enterprise для последующей установки на удаленные машины через PsExec. Но столкнулся с проблемой: при запуске msi вылезает окошко UAC, т.е. по умолчанию все msi запускаются с правами админа (мне это не надо, msi просто содержит несколько файлов), а мне необходимо, чтобы была, так сказать «тихая» установка, ибо за «удаленными машинами» никто не сидит, и бегать удовлетворять запросы UAC никто не будет. Как можно запустить (или создать) msi подобным образом? Чтобы ничего не вылезало, максимум — окошко в конце об успешной установке.
Да, видимо дело в этом, ибо ставится в корень диска С. Проблему удалось решить путем запуска PsExec сторонней утилитой с правами администратора (тогда UAC вылезает только на сервере), при этом нормально работает ключ -s или -i 0 (в обычном режиме возникала ошибка) и происходит тихая установка msi.
Если имя пользователя не задано, то удаленный процесс запускается из той же учетной записи, что и программа PsExec.
Нужно запускать от имени пользователя, который имеет права Администратора. Это может быть учетка локального администратора (если она включена везде), либо учетка с соотв. правами в Active Directory.
У меня проблема в том, что без указания имени пользователя с паролем PsExec не работает (пишет Couldn't access to...), даже при указании -u User -p Pass он отказывается работает. Получается только явно задавать пользователя: -u IP\User -p 1.
Как-то можно сделать, чтобы msi не выдавала запрос uac (такая msi имеется), но вот как это сделать…
Вот у меня есть программа которая создает только 1 папку и 1 файл на 3 строчки с опциями в \AppData\Roaming
и UAC все равно запрашивает права доступа к жесткому диску, я вот не пойму почему? и как это обойти легально