Просмотр содержимого XML-файлов параметров настройки центра развертывания Office

Обновлено: Июнь 2008

Назначение: Office Resource Kit

 

Последнее изменение раздела: 2015-03-09

Администраторы используют центр развертывания Office (OCT) для настройки и установки Выпуск 2007 системы Microsoft Office. Настройки сохраняются в файл настроек установки (файл MSP), использующий формат XML. В данной статье содержится пример сценария Microsoft Visual Basic, который можно использовать для просмотра настроек, сохраненных в файлах MSP центра развертывания.

Обзор Windows Script Host

Для выполнения сценария нужно использовать Microsoft Windows Script Host (WSH), не зависимый от языка узел сценариев для обработчиков сценариев, совместимых с Windows Script. WSH позволяет выполнять сценарии как с рабочего стола Windows, так и из командной строки.

При запуске сценариев из Windows WScript.exe вызывает диалоговое окно Windows для настройки свойств сценария. При запуске сценариев из командной строки CScript.exe предоставляет переключатели командной строки для настройки свойств сценария.

WSH обеспечивает для сценариев поддержку перетаскивания. Это означает, что в сценарий WSH можно перетаскивать файлы. Имена файлов будут переведены в аргументы командной строки.

Для получения более подробной информации по WSH посетите следующие разделы веб-сайта MSDN:

Пример сценария ExtractOctXml.vbs

В следующих частях будет представлен пример сценария Visual Basic, ExtractOctXml.vbs и инструкции по использованию данного сценария для извлечения метаданных в формате XML из файлов настроек MSP центра развертывания.

Для сохранения примера сценария откройте текстовый редактор типа Блокнот, скопируйте и вставьте код сценария, приведенный в этой части, в файл. Сохраните файл сценария как ExtractOctXml.vbs.

' Utility to extract the metadata from an Office 2007 customization patch 
' For use with Windows Scripting Host, CScript.exe or WScript.exe
' Copyright (c) Microsoft Corporation. All rights reserved.
'
Option Explicit

Const msiOpenDatabaseModePatchFile = 32
Const msiOpenDatabaseModeReadOnly     = 0
Const msiReadStreamBytes = 1

Const ForWriting = 2
Const TristateTrue = -1

Dim pathOCT_Patch 'As String
Dim pathMetadataXml 'As String
Dim sMetadata 'As String
Dim wshShell 'As Wscript.Shell
Dim fso 'As FileSystemObject
Dim fileOutput 'As File
Dim sErrSection ' As String


sErrSection = "ArgCheck"
' Check arg count, and display help if argument not present or contains ?
Dim argCount:argCount = Wscript.Arguments.Count
If argCount > 0 Then If InStr(1, Wscript.Arguments(0), "?", vbTextCompare) > 0 Then argCount = 0
If (argCount = 0) Then
    Wscript.Echo "Office 2007 OCT Metadata Extract utility" & _
        vbNewLine & " You must supply the location of the Office 2007 customization patch " & _
        vbNewLine & _
        vbNewLine & "Copyright (C) Microsoft Corporation.  All rights reserved."
    Wscript.Quit 1
Else
    pathOCT_Patch = Trim(Wscript.Arguments(0))
End If


sErrSection = "FSO"
' Create FileSystemObject and verify file exists
Set fso = CreateObject("Scripting.FileSystemObject") : CheckError
If Not fso.FileExists(pathOCT_Patch) Then Err = 2 : CheckError


sErrSection = "WI"
' Connect to Windows Installer object
On Error Resume Next
Dim wi : Set wi = Nothing
Set wi = Wscript.CreateObject("WindowsInstaller.Installer") : CheckError


sErrSection = "Read Metadata"
' Open OCT patch and read the metadata stream
Dim wiStorage, vw, rec
Set wiStorage = wi.OpenDatabase(pathOCT_Patch, msiOpenDatabaseModePatchFile) : CheckError
Set vw = wiStorage.OpenView("SELECT * FROM _Streams WHERE `Name`='metadata' ") : CheckError
vw.Execute
Set rec = vw.Fetch
If Not rec Is Nothing Then
    sMetadata = rec.ReadStream(2, rec.DataSize(2), msiReadStreamBytes)
Else
    Wscript.Echo "No Metadata stream was found in this file: " & pathOCT_Patch
    Wscript.Quit 2
End If

Set wiStorage = Nothing
Set rec = Nothing: Set vw = Nothing
Set wi = Nothing


sErrSection = "Write Metadata"
' Write the metadata stream to a temp file
Set wshShell = CreateObject("WScript.Shell") : CheckError
pathMetadataXml = wshShell.ExpandEnvironmentStrings("%temp%") & "\" & fso.GetFileName(pathOCT_Patch) & ".xml"
Set fileOutput = fso.OpenTextFile(pathMetadataXml, ForWriting, True, -1) : CheckError
fileOutput.WriteLine sMetadata 
fileOutput.Close

Set fileOutput = Nothing: Set fso = Nothing

sErrSection = "Show Metadata"
' Launch Metadata in IE
wshShell.Run "iexplore.exe " & pathMetadataXml 

    
    
Sub CheckError
Dim sMsg, errRec
    If Err = 0 Then Exit Sub
    sMsg = sErrSection & vbNewLine & Err.Source & " " & Hex(Err) & ": " & Err.Description
    If Not wi Is Nothing Then
    Set errRec = wi.LastErrorRecord
        If Not errRec Is Nothing Then sMsg = sMsg & vbNewLine & errRec.FormatText
    End If
    Wscript.Echo sMsg
    Wscript.Quit 2
End Sub

Sub NoMetadata
End Sub

Запуск сценария

Файл ExtractOctXml.vbs может быть сохранен в любой папке на компьютере. Для использования сценария ExtractOctXml.vbs нужно перетащить файл настроек MSP центра развертывания на файл сценария. Сценарий извлечет метаданные XML в папку Temp пользователя как файл <имя патча центра развертывания Office>.xml. Затем файл XML передается в Internet Explorer для просмотра.

Запуск сценария

  1. Используйте Проводник Windows, чтобы открыть папку, содержащую файл ExtractOctXml.vbs.

  2. Перетащите копию файла MSP, который нужно просмотреть, на файл ExtractOctXml.vbs, отображаемый в окне Проводника Windows.

  3. После открытия файла XML можно будет развернуть и свернуть различные части для просмотра параметров, содержащихся в файле настроек MSP.

    Элемент <UserSettings> файла metadata.xml содержит параметры пользователя, указанные в файле настроек MSP, в то время как элемент <Options> файла metadata.xml содержит параметры, относящиеся к состоянию компонентов.

Запуск сценария с помощью командной строки

  1. Нажмите кнопку Пуск, затем Выполнить, а потом введите cmd.

  2. В окне командной строки введите:

    cscript <путь к сценарию> \ExtractOCTXml.vbs <путь к файлу настроек центра развертывания и имя файла>

    - или -

    wscript <путь к сценарию> \ExtractOCTXml.vbs <путь к файлу настроек центра развертывания и имя файла>

    Файл XML будет загружен в окно Internet Explorer для просмотра.

Просмотр XML-содержимого файла настроек MSP

Центр развертывания Office использует файлы настроек (OPA) для заполнения пользовательского интерфейса Изменение пользовательских параметров в OCT и добавления соответствующих разделов и значений реестра во время установки. Файлы настроек OPA системы Office 2007 размещены в папке Admin, расположенной в корневом каталоге папки Office 2007 или CD.

В следующей таблице описаны разделы верхнего уровня, включенные в файл MSP metadata.xml.

Раздел Описание

<Customization baseFolder>

Содержит информацию об имени файла настроек MSP и пути к нему. Данные элементы используются во внутреннем коде и не отображают действительных настроек.

<Product id>

Содержит информацию о локальных исходных пакетах, состоянии установки (например, "Всегда установлено"), языковых пакетах MUI, ИД продуктов, ярлыках и приложениях с возможностью улучшения.

Данные элементы используются во внутреннем коде и не отображают действительных настроек.

<SecurityApps>

Перечисляет приложения, которые могут располагаться в защищенных зонах, как указано в раскрывающемся списке, расположенном в настройка\Параметры безопасности приложений OfficeДобавляет данные пути в списокНадежные расположения центра развертывания Office.

Данные элементы используются во внутреннем коде и не отображают действительных настроек.

<SecurityAppSettings>

Перечисляет параметры безопасности, отображаемые в области Настройка\Параметры безопасности приложений Office центра развертывания Office. Изменения в данном списке появляются ниже, в элементе <SecuritySettings>.

Данные элементы используются во внутреннем коде и не отображают действительных настроек.

<SecurityPossibleSettingValues>

Перечисляет параметры безопасности, доступные для элемента <SecurityAppSettings>.

Данные элементы используются во внутреннем коде и не отображают действительных настроек.

<GlobalSettings>

Содержит информацию о свойствах установки, расположенную в разделе Настройка\Изменение свойств установки Office центра развертывания Office.

<UserSettings>

Содержит информацию и данные по разделам реестра по всем параметрам, настроенным в разделе Компоненты\Изменение пользовательских параметров центра развертывания Office.

<File>

Содержит информацию по всем файлам, добавленным или удаленным с помощью параметров Дополнительное содержимое\Добавление файлов или Удаление файлов центра развертывания Office.

<Registry>

Содержит информацию о всех разделах реестра, добавленных или удаленных с помощью параметров Дополнительное содержимое\Добавление записей системного реестра или Удаление записей системного реестра центра развертывания Office.

<Shortcuts>

Содержит информацию о ярлыках, добавленных с помощью параметров Дополнительное содержимое\Настройка ярлыков центра развертывания Office.

<Install>

Содержит информацию по параметрам установки, расположенным среди параметров Настройка\Путь установки и название организации, Настройка\Дополнительные сетевые источники и Настройка\Лицензионное соглашение и пользовательский интерфейс центра развертывания Office.

<ChildInstalls>

Содержит информацию о дополнительных действиях, произведенных после установки, полученную из параметров Настройка/Добавление программ центра развертывания Office.

<Options>

Содержит параметры, относящиеся к состоянию компонентов приложения.

<SecuritySettings>

Содержит информацию об изменениях параметров безопасности по умолчанию, сделанных с помощью изменения раздела Настройка\Защищенные части Office\Параметры безопасности по умолчанию центра развертывания Office.

<SecurityTrustedLocations>

Содержит информацию о "Надежных расположениях", добавленных в параметрах Настройка\Параметры безопасности приложений Office центра развертывания Office (в Добавить следующие пути в список "Надежные расположения").

<SecurityCertificates>

Содержит информацию о сертификатах, добавленных в параметрах Настройка\Параметры безопасности приложений Office центра развертывания Office (в Добавить следующие цифровые сертификаты в список "Доверенные издатели").

<Outlook>

Содержит информацию о настройке профиля Outlook, произведенной с помощью параметров Outlook центра развертывания Office.

В следующем примере показано, как находить параметры в полученном файле XML, который открывается в Internet Explorer после запуска сценария ExtractOctXml.vbs с файлом настроек MSP центра развертывания Office.

Пример

В данном примере используется файл настроек Plus MSP Microsoft Office Профессиональный 2007. Установлен только Microsoft Office Access 2007, и установлен Access 2007 в качестве формата файлов по умолчанию для Access. Параметр Формат файлов по умолчанию для Access расположен в узле Microsoft Office Access 2007\Прочее экрана Изменение пользовательских параметров центра развертывания Office.

Используйте текстовый редактор типа Блокнот для того, чтобы открыть файл настроек OPA Access 2007, access12.opa (расположенный в корневом каталоге папки Office 2007 в папке Admin). Найдите строку, отображаемую в центре развертывания Office в качестве параметра Default file format, формат файла по умолчанию. Данное действие вызовет следующий раздел файла access12.opa:

KEYNAME Software\Microsoft\Office\12.0\Access\Settings

PART !!L_Empty DROPDOWNLIST

VALUENAME "Default File Format"

ITEMLIST

NAME !!L_Access2007 VALUE NUMERIC 12 DEFAULT

NAME !!L_Access20022003 VALUE NUMERIC 10

END ITEMLIST

Благодаря данной информации о параметрах пользователя вы можете определить раздел реестра для параметра (в данном случае Software\Microsoft\Office\12.0\Access\Settings) и возможные значения реестра. Значение Default File Format, равное 12, задает формат файла по умолчанию как Access 2007, в то время как значение Default File Format, равное 10, задает формат файла по умолчанию как Access 2002-2003.

После получения данной информации из файла access12.opa можно найти в файле настроек metadata.xml необходимый раздел реестра или значение, такое как Software\Microsoft\Office\12.0\Access\Settings. Выполнение этого в данном примере отобразит следующий раздел файла metadata.xml:

<AddRegistries>

<AddRegistry root="HKCU" key="Software\Microsoft\Office\12.0\Access\Settings" name="Default File Format" emptykey="false" flags="0" type="0" value="12" guid="{2A044E97-7BB1-4644-BF84-A35A5B2E5D51}" />

Используя информацию из файла OPA, можно понять, что раздел Default File Format имеет значение 12, что задает формат файлов по умолчанию как Access 2007.

Ниже расположена выдержка из раздела <Options> файла XML, используемого в этом примере:

<Option id="ACCESSFiles" installState="3" />

<Option id="Access_PIA" installState="3" />

<Option id="AccessWizards" installState="3" />

<Option id="CalendarControl" installState="3" />

<Option id="DeveloperWizards" installState="3" />

<Option id="AccessHelpFiles" installState="3" />

<Option id="AccessTemplatesIntl" installState="3" />

<Option id="EXCELFiles" installState="1" />

.

.

<Option id="OUTLOOKFiles" installState="1" />

.

.

<Option id="PPTFiles" installState="1" />

Для получения дополнительной информации о OptionState ID см. раздел Элемент OptionState статьи Файл Config.xml в версии 2007 системы Office.