Exibir conteúdo XML de arquivos de personalização da Ferramenta de Personalização do Office

 

Aplica-se a: Office 2010

Tópico modificado em: 2015-03-09

Os administradores usam a OCT (Ferramenta de Personalização do Office) para personalizar uma instalação do O Microsoft Office 2010. As personalizações são salvas em um arquivo de personalização da Instalação (arquivo .msp) que usa o formato XML. Este artigo contém um script de exemplo em Microsoft Visual Basic que os administradores podem usar para exibir as configurações armazenadas nos arquivos .msp de personalização da Instalação.

Neste artigo:

  • Visão geral do Windows Script Host

  • Exemplo de script ExtractOctXml.vbs

  • Executando o script

  • Exibindo o conteúdo XML de um arquivo de personalização .msp

Visão geral do Windows Script Host

Para executar o script, use o WSH (Windows Script Host), um host de script independente de idioma para mecanismos de script compatíveis com Windows Script. O WSH permite executar scripts tanto da área de trabalho do Windows quanto do prompt de comando.

Para executar scripts no Windows, o WScript.exe fornece uma caixa de diálogo do Windows onde podem ser definidas as propriedades do script. Para executar scripts no prompt de comando, o CScript.exe fornece opções de linha de comando para definição das propriedades do script.

O WSH fornece suporte para arrastar e soltar scripts. Isso significa que você pode arrastar arquivos em um script WSH. Os nomes de arquivo são convertidos em argumentos na linha de comando.

Para obter mais informações sobre o WSH, consulte os seguintes recursos no site do MSDN:

Exemplo de script ExtractOctXml.vbs

As seções a seguir fornecem um exemplo de script em Visual Basic, ExtractOctXml.vbs, e instruções para usar o script a fim de extrair metadados XML dos arquivos de personalização .msp da OCT.

Para salvar o exemplo de script, abra um editor de texto, como o Bloco de Notas, e copie e cole o código do script desta seção para um arquivo. Salve o arquivo de script como ExtractOctXml.vbs.

' Utility to extract the metadata from an Office 2010 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 2010 OCT Metadata Extract utility" & _
        vbNewLine & " You must supply the location of the Office 2010 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

Executando o script

O arquivo ExtractOctXml.vbs pode ser armazenado em qualquer lugar do seu computador. Para usar o script ExtractOctXml.vbs, você pode arrastar o arquivo de personalização .msp da OCT cujas definições configuradas deseja ver e soltá-lo no script. O script extrai o XML de metadados na pasta Temp do usuário como <nome da atualização da OCT>.xml (por exemplo, Access.MSP.xml). O arquivo XML é então transferido para o Internet Explorer para exibição.

Para executar o script

  1. Use o Windows Explorer para abrir a pasta que contém o arquivo ExtractOctXml.vbs.

  2. Arraste e solte uma cópia do arquivo .msp de personalização da Instalação que você deseja exibir no ExtractOctXml.vbs mostrado na janela do Windows Explorer.

  3. Depois que o arquivo XML for aberto, você poderá expandir e recolher as várias seções para exibir as configurações contidas no arquivo de personalização .msp.

    O elemento <UserSettings> do arquivo XML de metadados Access.MSP.xml contém as configurações do usuário definidas no arquivo de personalização .msp , e o elemento <Opções> do arquivo XML de metadados Access.MSP.xml contém configurações relacionadas a estados do recurso.

Para executar o script usando a linha de comando

  1. Clique em Iniciar, em Executar e digite cmd.

  2. Na janela de Prompt de Comando, digite:

    cscript <caminho do script> \ExtractOCTXml.vbs <caminho do MSP da OCT e nome do arquivo>

    -ou-

    wscript <caminho do script> \ExtractOCTXml.vbs <caminho do MSP da OCT e nome do arquivo>

    O arquivo XML é carregado no Internet Explorer para exibição.

Exibindo o conteúdo XML de um arquivo de personalização .msp

A OCT usa arquivos de configurações (.opax) para popular a interface do usuário Modificar configurações do usuário na OCT e adicionar as chave e os valores apropriados do Registro durante a instalação. Os arquivos .opax de configurações do Office 2010 são armazenados na pasta Admin, localizada na raiz do CD ou do local do arquivo de origem do Office 2010.

A tabela a seguir descreve as seções de nível superior incluídas no arquivo XML de metadados .msp.

Seção Descrição

<Customization platform - baseFolder>

Fornece informações de caminho e nome de arquivo de personalização .msp. Esses elementos são usados internamente pelo código. Eles não representam as personalizações reais.

<Product id>

Fornece informações sobre os pacotes de origem da instalação local, o estado da instalação (como Instalar sempre), pacotes MUI de idioma, IDs de produto, recursos e IDs, atalhos e aplicativos atualizáveis.

Esses elementos são usados internamente pelo código. Eles não representam as personalizações reais.

<SecurityApps>

Lista os aplicativos que podem ter locais de segurança específicos, conforme indicado na lista suspensa encontrada na área Adicionar os seguintes caminhos à lista Locais ConfiáveisInstalação\Configurações desegurança do Office na OCT.

Esses elementos são usados internamente pelo código. Eles não representam as personalizações reais.

<SecurityAppSettings>

Lista as configurações de segurança que aparecem na área Instalação\Configurações de segurança do Office na OCT. As personalizações nessa lista são exibidas no elemento <SecuritySettings> a seguir.

Esses elementos são usados internamente pelo código. Eles não representam as personalizações reais.

<SecurityPossibleSettingValues>

Lista as opções de segurança que estão disponíveis para <SecurityAppSettings>.

Esses elementos são usados internamente pelo código. Eles não representam as personalizações reais.

<GlobalSettings>

Fornece informações sobre propriedades de configuração encontradas na seção Instalação\Modificar propriedades da Instalação da OCT.

<UserSettings>

Fornece informações e dados de chave do Registro sobre qualquer definição configurada na seção Recursos\Modificar configurações do usuário da OCT.

<File>

Fornece informações sobre os arquivos adicionados ou removidos com o uso das opções Conteúdo adicional\Adicionar arquivos ou Remover arquivos na OCT.

<Registry>

Fornece informações sobre as chaves de Registro adicionadas ou removidas com o uso das opções Conteúdo adicional\Adicionar entradas do Registro ou Remover entradas do Registro na OCT.

<Shortcuts>

Fornece informações sobre atalhos adicionados com o uso das opções Conteúdo adicional\Configurar atalhos na OCT.

<Install>

Fornece informações sobre as configurações de instalação encontradas nas opções Instalação\Local da instalação e nome da organização, Instalação\Origens de rede adicionais e Instalação\Licenciamento e interface do usuário na OCT.

<ChildInstalls>

Fornece informações sobre ações adicionais pós-instalação encontradas nas opções de Instalação/Adicionar instalações e executar programas na OCT.

<Options>

Contém configurações relacionadas aos estados dos recursos do aplicativo.

<SecuritySettings>

Fornece informações sobre alterações feitas nas configurações de segurança padrão com o uso da seção Instalação\Configurações de segurança do Office\Configurações de segurança padrão da OCT.

<SecurityTrustedLocations>

Fornece informações sobre Locais confiáveis adicionados nas opções Instalação\Configurações de segurança do Office na OCT (em Adicionar os seguintes caminhos à lista Locais Confiáveis).

<SecurityCertificates>

Fornece informações sobre certificados adicionados nas opções Instalação\Configurações de segurança do Office da OCT (em Adicionar os seguintes certificados digitais à lista Fornecedores Confiáveis).

<Outlook>

Fornece informações sobre a personalização do Perfil do Outlook feita nas opções do Outlook da OCT.

O exemplo a seguir mostra como localizar configurações no arquivo XML resultante (Access.MSP.xml neste exemplo) que é aberto no Internet Explorer quando você executa o script ExtractOctXml.vbs com o arquivo de personalização .msp da OCT.

Exemplo

Este exemplo usa um arquivo de personalização .msp do Office 2010. Somente o Microsoft Access 2010 é instalado, e o formato de arquivo do Microsoft Office Access 2007 está habilitado. A configuração do usuário Formato de arquivo padrão para o Access está localizada no nó Microsoft Office Access 2010\Diversos da seção Modificar configurações do usuário da OCT.

No arquivo XML de metadados, Access.MSP.xml, você pode procurar a chave ou o valor do Registro, como Default file format. Pesquisar por “formato de arquivo padrão” neste exemplo levaria você à seguinte seção do arquivo XML de metadados Access.MSP.xml:

<AddRegistries>

<AddRegistry root="HKCU" key="software\microsoft\office\14.0\access\settings" name="default file format" emptykey="false" flags="0" type="2" value="12" guid="{39478C45-8DBA-403C-B4BB-1F1D07CE85D7}" />

Use um editor de texto, como o Bloco de Notas, para abrir o arquivo de configurações .opax do Access 2010, access14.opax (localizado na raiz do local do arquivo de origem do Office 2010, na pasta Admin). Procure a cadeia DefaultFileFormat (que corresponde à configuração do usuário Formato de arquivo padrão). Isso mostrará a seguinte seção do arquivo access14.opax:

<policy name="L_DefaultFileFormat" class="User" displayName="$(string.L_DefaultFileFormat)" explainText="$(string.L_DefaultFileFormatExplain)" presentation="$(presentation.L_DefaultFileFormat)" key="software\policies\microsoft\office\14.0\access\settings">

<parentCategory ref="L_Miscellaneous" />

<supportedOn ref="windows:SUPPORTED_WindowsVista" />

<elements>

<enum id="L_empty87" valueName="Default File Format">

<item displayName="$(string.L_Access2007)">

<value>

<decimal value="12" />

</value>

</item>

<item displayName="$(string.L_Access20022003)">

<value>

<decimal value="10" />

</value>

</item>

<item displayName="$(string.L_Access2000)">

<value>

<decimal value="9" />

</value>

</item>

</enum>

</elements>

</policy>

Com base nessas informações de configuração do usuário, você pode identificar a chave do Registro para a configuração (software\policies\microsoft\office\14.0\access\settings nesse caso) e os possíveis valores do Registro. Um valor igual a 12 para DefaultFileFormat define o formato de arquivo padrão como Access 2007, enquanto um valor igual a 10 para DefaultFileFormat define o formato de arquivo padrão como Access 2002-2003.

Usando as informações do arquivo .opax, você pode ver que a chave DefaultFileFormat tem o valor 12, o que define o formato de arquivo padrão como Access 2007.

Os trechos a seguir mostram alguns dos valores de Option id do Access que são listados na seção <Options> do arquivo Access.MSP.xml neste exemplo:

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

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

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

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

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

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

Para obter mais informações sobre IDs de OptionState, consulte OptionState element, em Config.xml file in Office 2010.