Поделиться через


Распакуйте пакет управления для использования с средством разработки Service Manager

Пакет пакета управления (MPB) в System Center — Service Manager включает несколько файлов пакета управления (MP). Кроме того, она может содержать ссылки на ресурсы, такие как изображение или сборка формы. Чтобы настроить MPB-файл, необходимо получить доступ и настроить отдельные файлы в пакете.

В этой версии средства разработки Service Manager невозможно напрямую открыть MPB-файл для доступа к отдельным файлам. Вместо этого необходимо вручную распакуировать MPB-файл и сохранить все MP-файлы, .xml и другие файлы ресурсов в одной папке, доступной средству разработки. Затем можно открыть и настроить отдельные файлы в средстве разработки таким же образом, как и другие пакеты управления. После завершения настроек необходимо отменить удаление файлов и создать новый mpb-файл пакета управления.

Большинство файлов ресурсов можно извлечь из MPB-файла с помощью скрипта Windows PowerShell. В следующих процедурах приведены примеры скриптов Windows PowerShell, которые извлекают файлы из MPB-файла. Дополнительные сведения об использовании пакета SDK Service Manager для создания других сценариев см. в разделе SDK Service Manager.

Не удается извлечь запечатанные пакеты управления из MPB-файла. Владельцы пакетов должны предоставлять каждый файл отдельно для запечатаемого пакета управления.

Извлечение отдельных неуправляемых пакетов управления из MPB-файла

  1. Запустите сеанс Windows PowerShell Service Manager.

  2. В консоли Windows PowerShell введите следующие команды:

    mkdir <mpdir>  
    
    Get-SCSMManagementPack -bundlefile .\<filename>.mpb | Export-SCSMManagementPack -path <mpdir>  
    
    • В команде замените заполнитель mpdir папкой, в которой будут храниться извлеченные файлы пакета управления.

    • Замените заполнитель имени файла именем MPB-файла.

    Теперь вы можете перейти к папке mpdir в текущей рабочей папке, чтобы просмотреть и получить доступ к извлеченным файлам пакета управления.

Извлечение файлов ресурсов из MPB-файла

  1. В окне Windows PowerShell введите следующие команды:

    $SM2016DirKey = Get-ItemProperty "hklm:\SOFTWARE\Microsoft\System Center\2016\Common\Setup"  
    $SM2016Dir = $SM2016DirKey.InstallDirectory   
    [reflection.assembly]::loadfrom($SM2016Dir + "\SDK Binaries\Microsoft.EnterpriseManagement.Packaging.dll")  
    [reflection.assembly]::LoadWithPartialName("Microsoft.EnterpriseManagement.Core") | out-null  
    $emg = new-object Microsoft.EnterpriseManagement.EnterpriseManagementGroup localhost  
    $mpbReader = [Microsoft.EnterpriseManagement.Packaging.ManagementPackBundleFactory]::CreateBundleReader()  
    $mpb = $mpbReader.Read("$PWD\Administration.mpb", $emg)  
    

В объекте $mpb теперь можно получить доступ к $mpb. ManagementPacks; это пакеты управления в пакете MPB. И вы можете получить доступ к $mpb. GetStreams(ManagementPack), который связывает ресурсы с пакетом управления в этом пакете. Эти ресурсы будут находиться в виде двоичных потоков, которые можно записать в файлы.

Следующие шаги