Распакуйте пакет управления для использования с средством разработки 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-файла
Запустите сеанс Windows PowerShell Service Manager.
В консоли Windows PowerShell введите следующие команды:
mkdir <mpdir>
Get-SCSMManagementPack -bundlefile .\<filename>.mpb | Export-SCSMManagementPack -path <mpdir>
В команде замените заполнитель mpdir папкой, в которой будут храниться извлеченные файлы пакета управления.
Замените заполнитель имени файла именем MPB-файла.
Теперь вы можете перейти к папке mpdir в текущей рабочей папке, чтобы просмотреть и получить доступ к извлеченным файлам пакета управления.
Извлечение файлов ресурсов из MPB-файла
В окне 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), который связывает ресурсы с пакетом управления в этом пакете. Эти ресурсы будут находиться в виде двоичных потоков, которые можно записать в файлы.
Следующие шаги
- Настройте и создайте классы с помощью разработки Service Manager.