2013-12-03 5 views
0

Я пытаюсь создать пакетный файл для запуска автоматической установки Adobe Reader 9 (это MSI-файл)Msiexec/а не работает

Моя проблема с UAC. Если я сделаю такую ​​команду:

msiexec.exe /i "AcroRead.msi" EULA_ACCEPT=1 ALLUSERS=1 /passive 

Установка выполняется нормально, за исключением того, что я должен принять UAC, прежде чем он что-либо сделает. Если я заменил/i на/a, он пропускает UAC, и, похоже, он устанавливается, но когда он заканчивается, он не устанавливает программу вообще! Нет сообщения об ошибке или ничего, оно не отображается при добавлении/удалении программ.

Возможно, он установит неправильный профиль, если я использую переключатель/a?

Я очень новичок в написании сценариев, поэтому большая часть информации у меня есть, что я могу убрать из Google.

Я знаю, что есть способы отключить UAC из партии, но, если возможно, я бы хотел этого избежать.

Я делаю это на виртуальной машине Win7 x64 sp1.

+0

Конечным результатом моего сценария должно быть то, что он устанавливает несколько программ из одной партии. Пока он выполняет эту работу, пока я принимаю UAC для каждой начальной установки. Я хочу сделать это полностью без внимания. – user3060338

ответ

0

Любая установка программного обеспечения должна запрашивать учетные данные администратора независимо от того, запускаете ли вы установщик с помощью пакетного сценария или дважды щелкаете по файлу AcroRead.msi в проводнике Windows. Вот как работает разрешение на Windows, и, честно говоря, я бы не хотел, чтобы система была обойдена через терминал БЕЗ запроса учетных данных. Я не верю, что это возможно.

Попробуйте удалить /passive, так как, возможно, это сообщение является недопустимым. Также добавьте инструкцию pause в конце вашего командного сценария, чтобы вы могли прочитать сообщение об ошибке до закрытия командной строки.

Редактировать: Запустить пакетный скрипт в качестве администратора. Это отличается от запуска msiexec с помощью команды/a. Это откроет приглашение UAC в начале сценария, и если он будет аутентифицирован, остальная часть командного файла будет запущена с правами администратора.

+0

Я удалил/пассивный переключатель, и я обнаружил, что программа пытается установить на сетевой диск (E :), поэтому он отказался от пути установки по умолчанию. Теперь я попытался ввести TARGETDIR и INSTALLDIR, и не работает. Он по-прежнему указывает на диск E: – user3060338

+0

У Windows иногда возникают проблемы с доступом к данным, которые существуют на сетевом диске. Можете ли вы попробовать установить AcroRead.msi на локальном диске и посмотреть, работает ли это? – IceArdor

0

/a не используется для нормальной установки. Он будет генерировать administrative installation. «Сетевая» установка, позволяющая другим пользователям до установить из общего хранилища.

+0

Итак, мне нужно будет придерживаться/i, и просто соглашайтесь с запросами UAC, тогда – user3060338

+0

Есть несколько вариантов, см. [Здесь] (http://www.rawcomputing.co.uk/vistatips36.html). –

Смежные вопросы