Visualización de contenido XML de los archivos de personalización de la Herramienta de personalización de Office

Actualizado: junio de 2008

Se aplica a: Office Resource Kit

 

Última modificación del tema: 2015-03-09

Los administradores usan la Herramienta de personalización de Office (OCT) para personalizar la instalación de 2007 Microsoft Office system. Las personalizaciones se guardan en un archivo de personalización (archivo MSP) de la instalación que usa el formato de Lenguaje de marcado extensible (XML). En este artículo se proporciona un script de Microsoft Visual Basic de ejemplo que los administradores pueden usar para ver la configuración almacenada en los archivos MSP de la Herramienta de personalización de Office.

Introducción a Windows Script Host

Para ejecutar el script, use Microsoft Windows Script Host (WSH), un host de scripting independiente del lenguaje para motores de scripting compatibles con Windows Script. WSH permite ejecutar scripts desde el escritorio de Windows y el símbolo del sistema.

Para ejecutar scripts en Windows, WScript.exe proporciona un cuadro de diálogo basado en Windows para configurar las propiedades de los scripts. Para ejecutar scripts desde el símbolo del sistema, CScript.exe proporciona modificadores de línea de comandos para configurar las propiedades de los scripts.

WSH permite arrastrar y colocar los scripts. Esto significa que puede arrastrar los archivos hasta un script de WSH. Los nombres de archivo se traducen como argumentos en la línea de comandos.

Para obtener más información acerca de WSH, vea los siguientes recursos en el sitio web de MSDN:

Script ExtractOctXml.vbs de ejemplo

En las siguientes secciones se proporcionan un script de Visual Basic de ejemplo, ExtractOctXml.vbs, e instrucciones para usar el script para extraer los metadatos XML de los archivos de personalización MSP de la Herramienta de personalización de Office.

Para guardar el script de ejemplo, abra un editor de texto (por ejemplo, el Bloc de notas) y copie y pegue el script de esta sección en un archivo. Guarde el archivo del script como 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

Ejecución del script

El archivo ExtractOctXml.vbs se puede almacenar en cualquier ubicación del equipo. Para usar el script ExtractOctXml.vbs, sólo tiene que arrastrar el archivo de personalización MSP de la Herramienta de personalización de Office y colocarlo en el script. El script extrae los metadatos XML en la carpeta Temp del usuario como <nombre de revisión OCT>.xml. A continuación, el archivo XML se pasa a Internet Explorer para su visualización.

Para ejecutar el script

  1. Use el Explorador de Windows para abrir la carpeta que contiene el archivo ExtractOctXml.vbs.

  2. Arrastre y coloque una copia del archivo MSP que desee ver en el archivo ExtractOctXml.vbs que se muestra en la ventana del Explorador de Windows.

  3. Cuando se abra el archivo XML, puede expandir y contraer las distintas secciones para ver la configuración incluida en el archivo de personalización MSP.

    El elemento <UserSettings> del archivo metadata.xml contiene la configuración de usuario establecida en el archivo de personalización MSP y el elemento <Options> del archivo metadata.xml contiene la configuración relacionada con los estados de las características.

Para ejecutar el script a través de la línea de comandos

  1. Haga clic en Inicio, haga clic en Ejecutar y, a continuación, escriba cmd.

  2. En el símbolo del sistema, escriba:

    cscript <ruta de acceso del script> \ExtractOCTXml.vbs <ruta de acceso y nombre de archivo MSP de OCT>

    O bien

    wscript <ruta de acceso del script> \ExtractOCTXml.vbs <ruta de acceso y nombre de archivo MSP de OCT>

    El archivo XML se carga en Internet Explorer para su visualización.

Visualización del contenido XML en un archivo de personalización MSP

La Herramienta de personalización de Office (OCT) usa archivos de configuración (OPA) para especificar los valores de la interfaz de usuario Modificar configuración del usuario de OCT y agregar las claves del Registro y los valores correspondientes durante la instalación. Los archivos OPA de configuración de Office 2007 se almacenan en la carpeta Admin, ubicada en la raíz de la ubicación del archivo de origen de Office 2007 o en el CD.

En la siguiente tabla se describen las secciones de nivel superior incluidas en el archivo MSP metadata.xml.

Sección Descripción

<Customization baseFolder>

Proporciona la ruta de acceso y el nombre del archivo de personalización MSP. El código usa estos elementos internamente. No representan ninguna personalización real.

<Product id>

Proporciona información acerca de los paquetes de orígenes de instalación local, el estado de la instalación (por ejemplo, Siempre instalado), los paquetes MUI de idioma, los identificadores de productos, las características y los identificadores, los accesos directos y las aplicaciones actualizables.

El código usa estos elementos internamente. No representan ninguna personalización real.

<SecurityApps>

Muestra las aplicaciones que tienen ubicaciones de seguridad específicas según se indica en la lista desplegable del área Configuración\Configuración de seguridad de OfficeAgregue las rutas de acceso siguientes a la lista de ubicaciones de confianza de OCT.

El código usa estos elementos internamente. No representan ninguna personalización real.

<SecurityAppSettings>

Muestra la configuración de seguridad que aparece en el área Configuración\Configuración de seguridad de Office de OCT. Las personalizaciones de esta lista se muestran en el elemento <SecuritySettings> que se incluye a continuación.

El código usa estos elementos internamente. No representan ninguna personalización real.

<SecurityPossibleSettingValues>

Muestra las opciones de seguridad disponibles para <SecurityAppSettings>.

El código usa estos elementos internamente. No representan ninguna personalización real.

<GlobalSettings>

Proporciona información acerca de las propiedades de instalación de la sección Configuración\Modificar propiedades de la instalación de OCT.

<UserSettings>

Proporciona datos de claves del Registro e información acerca de las opciones configuradas en la sección Características\Modificar configuración del usuario de OCT.

<File>

Proporciona información acerca de los archivos agregados o quitados mediante las opciones Contenido adicional\Agregar archivos o Quitar archivos de OCT.

<Registry>

Proporciona información acerca de las claves del Registro agregadas o quitadas mediante las opciones Contenido adicional\Agregar entradas del Registro o Quitar entradas del Registro de OCT.

<Shortcuts>

Proporciona información acerca de los accesos directos agregados mediante las opciones Contenido adicional\Configurar accesos directos de OCT.

<Install>

Proporciona información acerca de la configuración de la instalación de las opciones Configuración\Ubicación de instalación y nombre de la organización, Configuración\Orígenes de redes adicionales y Configuración\Licencia e interfaz de usuario de OCT.

<ChildInstalls>

Proporciona información acerca de las acciones posteriores a la instalación de las opciones Configuración/Agregar instalaciones y ejecutar programas de OCT.

<Options>

Contiene la configuración relacionada con los estados de las características de la aplicación.

<SecuritySettings>

Proporciona información acerca de los cambios realizados en la configuración de seguridad predeterminada mediante la sección Configuración\Configuración de seguridad de Office\Configuración de seguridad predeterminada de OCT.

<SecurityTrustedLocations>

Proporciona información acerca de las ubicaciones de confianza agregadas en las opciones Configuración\Configuración de seguridad de Office de OCT (en Agregue las rutas de acceso siguientes a la lista de ubicaciones de confianza).

<SecurityCertificates>

Proporciona información acerca de los certificados agregados en las opciones Configuración\Configuración de seguridad de Office de OCT (en Agregue los siguientes certificados digitales a la lista de editores de confianza).

<Outlook>

Proporciona información acerca de la personalización de Perfil de Outlook realizada en las opciones de Outlook de OCT.

En el siguiente ejemplo, se muestra cómo buscar la configuración del archivo XML resultante que se abre en Internet Explorer al ejecutar el script ExtractOctXml.vbs con un archivo de personalización MSP de OCT.

Ejemplo

En este ejemplo se usa un archivo de personalización MSP de Microsoft Office Professional 2007 Plus. Sólo está instalado Microsoft Office Access 2007 y está configurado el formato de archivo predeterminado para Access (Access 2007). La opción de usuario Formato de archivo predeterminado para Access se encuentra en el nodo Microsoft Office Access 2007\Varios de la pantalla Modificar configuración del usuario de OCT.

Use un editor de texto (por ejemplo, el Bloc de notas) para abrir el archivo de configuración OPA de Access 2007, access12.opa (ubicado en la raíz de la ubicación del archivo de origen de Office 2007, en la carpeta Admin). Busque la cadena que se muestra en OCT para la configuración de usuario Formato de archivo predeterminado. De este modo, se muestra la siguiente sección del archivo 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

Con esta información sobre la configuración del usuario, puede determinar la clave del Registro para la configuración (Software\Microsoft\Office\12.0\Access\Settings en este caso) y los posibles valores del Registro. Si el valor de Formato de archivo predeterminado se establece en 12, éste será el formato de archivo predeterminado para Access 2007 y, si el valor de Formato de archivo predeterminado se establece en 10, éste será el formato de archivo predeterminado para Access 2002-2003.

Después de obtener esta información del archivo access12.opa, puede buscar el archivo metadata.xml de personalización para la clave del Registro o el valor que está buscando (por ejemplo, Software\Microsoft\Office\12.0\Access\Settings). En este ejemplo, esto permite mostrar la siguiente sección del archivo 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}" />

En la información del archivo OPA, puede ver que la clave de Formato de archivo predeterminado tiene un valor de 12, que establece el formato de archivo predeterminado en Access 2007.

En este ejemplo se incluye un fragmento de la sección <Options> del archivo 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" />

Para obtener más información acerca de los identificadores de OptionState, vea la sección Elemento OptionState del artículo Archivo Config.xml de 2007 Office system.