Скрипт установки и обновления платформы 1С

Обзор

В этой статье мы рассмотрим PowerShell скрипт, который автоматизирует установку и настройку платформы 1С. Скрипт позволяет быстро и безошибочно установить необходимые компоненты и настроить параметры, указанные в конфигурационном файле.

Основные функции скрипта

  1. Проверка конфигурационного файла и среды выполнения.
  2. Проверка текущей установленной версии платформы 1С.
  3. Установка или пропуск установки в зависимости от установленной версии.
  4. Копирование необходимых конфигурационных файлов (например, hasp.ini).
  5. Регистрация компонента comcntr.dll.

Требования

  • Операционная система Windows.
  • PowerShell версии 5.1 или выше.
  • Права администратора.

Шаги установки

  1. Убедитесь, что конфигурационный файл (PlatformInstall.ini) доступен.
  2. Сохраните скрипт и конфигурационный файл в безопасную директорию.
  3. Запустите скрипт с правами администратора:PowerShell
  4. .\PlatformInstall.ps1

Конфигурационный файл (PlatformInstall.ini)

Скрипт использует конфигурационный файл для определения параметров установки. Пример конфигурации: INI

[INSTALL]DistrDir=\\Server\Scripts\bin\
ProductCode={B26B9BD7-DA36-6A6B-9729-A559619283F6}
ProductVersion=8.3.25.1445UpgradeCode={76AA2121-1E8C-4993-B980-49916CA2387C}
MsiPackage=1CEnterprise 8 (x86-64).msi
MsiOptions=THICKCLIENT=1 THINCLIENT=1 WEBSERVER=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=1 LANGUAGES=RU
HaspIni=\\Server\Scripts\nethasp.ini

Обязательные поля

  • DistrDir: Директория, содержащая установочные файлы.
  • ProductCode: GUID продукта.
  • ProductVersion: Версия платформы для установки.
  • MsiPackage: Название MSI пакета.
  • MsiOptions: Опции, передаваемые MSI установщику.
  • HaspIni: Путь к файлу hasp.ini.

Особенности скрипта

Логирование

Скрипт записывает сообщения со следующими уровнями:

  • INFO: Общий прогресс и шаги.
  • ERROR: Проблемы, вызывающие завершение скрипта.

Основные функции

  • Log-Event: Записывает сообщения с указанным уровнем.
  • Catch-Error: Обрабатывает и записывает ошибки, затем завершает скрипт.
  • Get-IniContent: Анализирует конфигурационный файл и возвращает его содержимое в виде словаря.
  • Get-InstalledVersion: Получает текущую установленную версию платформы 1С из реестра Windows.
  • Copy-HaspIni: Копирует файл hasp.ini в соответствующую директорию (C:\Program Files\1cv8\conf или эквивалент).
  • Register-ComCntrDll: Регистрирует файл comcntr.dll из директории bin установленной платформы.

Последовательность выполнения

  1. Скрипт читает и проверяет конфигурационный файл.
  2. Проверяет установленную версию платформы:
    • Если установленная версия новее или равна целевой версии, скрипт пропускает установку.
    • В противном случае продолжает установку.
  3. Скрипт устанавливает MSI пакет, используя параметры, указанные в конфигурационном файле.
  4. Копирует файл hasp.ini в требуемую директорию.
  5. Скрипт регистрирует компонент comcntr.dll.

Примеры использования

Запустите скрипт или разместите в групповой политике на событие Startup для установки или обновления платформы:

.\PlatformInstall.ps1

Устранение неполадок

  • Конфигурационный файл не найден: Убедитесь, что путь к PlatformInstall.ini правильный.
  • HASP.INI не найден: Проверьте, существует ли файл по указанному пути.
  • Не удалось зарегистрировать DLL: Убедитесь, что файл comcntr.dll существует в директории bin.

GitHub

Запись опубликована в рубрике , DevOps, Microsoft, Windows, Windows Server с метками , , , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.