Операции образца загрузчика Setup.exe
Обновлен: Ноябрь 2007
При использовании примера загрузчика Setup.exe не требуется знать особенности реализации операций, выполняемых программой Setup.exe. Сведения о выполнении конкретных операций программой Setup.exe приведены для разработчиков, которые хотят создавать собственные программы, устанавливающие .NET Framework вместе с приложением.
Пример загрузчика Setup.exe предназначен для автоматического выполнения следующих операций.
Обнаружение установленной платформы .NET Framework
Запуск автоматической установки Dotnetfx.exe
Обработка кодов наиболее распространенных ошибок в процессе установки
Вызов программы установки MSI для приложения и блокировка перезагрузки компьютера до завершения установки приложения
Обнаружение установленной платформы .NET Framework
В примере загрузчика Setup.exe показан код, позволяющий создать для программы установки оболочку, проверяющую, установлена ли платформа .NET Framework. Проверка наличия указанной версии .NET Framework выполняется по следующему разделу реестра.
HKLM\SOFTWARE\Microsoft\.NETFramework\policy\v1.0
Номер нужной версии получается из файла Dotnetfx.exe. Код сравнивает версию построения в разделе реестра с версией построения .NET Framework в приложении. Если номера построений не совпадают, программа Setup.exe устанавливает ту версию .NET Framework, которая необходима для работы приложения.
Следует иметь в виду, что если программа Setup.exe должна проверять не только номер построения, но язык платформы .NET Framework, необходимо указать имя языка и региональных параметров в файле Settings.ini. Если имя языка и региональных параметров не указано, программа Setup.exe будет по умолчанию искать только английскую версию. Инструкции по указанию имени языка и региональных параметров см. в разделе Использование примера загрузчика Setup.exe с приложением.
Запуск автоматической установки Dotnetfx.exe
Для запуска автоматической установки Dotnetfx.exe программа Setup.exe использует следующую команду.
dotnetfx.exe /q:a /c:"install /l /q"
При автоматической установке не отображаются пользовательский интерфейс и сообщения об ошибках, создаваемые программой Dotnetfx.exe и содержащейся в ней программой Install.exe. Для запуска автоматической установки необходимо указать параметры /q:a и /q, что позволяет унифицировать процедуру установки на всех компьютерах. Кроме того, можно указать параметр /l, чтобы в каталоге %temp% был создан файл журнала установки Netfx.log, в котором будут регистрироваться все ошибки.
Обработка кодов наиболее распространенных ошибок в процессе установки
В следующей таблице перечислены наиболее распространенные ошибки, обрабатываемые примером загрузчика Setup.exe.
Ошибка |
Текст по умолчанию |
---|---|
3010 |
Для установки необходима перезагрузка. Выполнить перезагрузку? Требуется перезагрузка. |
8192 |
Для установки необходима перезагрузка. Выполнить перезагрузку? После установки установщика Windows требуется перезагрузка компьютера. |
4101 |
Уже запущен другой экземпляр программы установки. Если запущен другой экземпляр программы установки, его выполнение продолжится, а выполнение текущего экземпляра не может быть продолжено. |
4097 |
Недостаточно прав для установки этого приложения. Обратитесь к администратору.. В Windows NT для установки и удаления программ требуются привилегии администратора. |
1633 |
Компьютер неправильно настроен для запуска этого приложения. Обратитесь в службу технической поддержки. Недопустимая платформа. |
Все остальные ошибки |
Во время работы программы установки возникла ошибка. Невозможно продолжить установку. Во время установки произошла неустранимая ошибка. Продолжить установку Dotnetfx.exe невозможно. |
Вызов программы установки MSI для приложения и блокировка перезагрузки компьютера до завершения установки приложения
Для вызова программы установки MSI основного приложения служит следующая команда: myapp.msi. При использовании параметра REBOOT=ReallySuppress компьютер не будет перезагружаться до завершения установки приложения myapp.
msiexec /i myapp.msi REBOOT=ReallySuppress
Следует иметь в виду, что примеру загрузчика Setup.exe не требуется обрабатывать коды ошибок, создаваемые основным приложением, myapp, поскольку установка не автоматическая, и все ошибки выводятся с помощью пользовательского интерфейса установщика Windows.
См. также
Основные понятия
Создание проекта одиночной установки для инсталляции приложения .NET Framework и Dotnetfx.exe
Использование примера загрузчика Setup.exe с приложением
Сценарии развертывания Dotnetfx.exe
Минимальные требования к конфигурации для Dotnetfx.exe