Anzeigen von XML-Inhalten in Anpassungsdateien des Office-Anpassungstools
Letzte Aktualisierung: Juni 2008
Betrifft: Office Resource Kit
Letztes Änderungsdatum des Themas: 2015-03-09
Administratoren verwenden das Office-Anpassungstool (OAT), um eine Installation von 2007 Microsoft Office System anzupassen. Die Anpassungen werden in einer Setupanpassungsdatei (MSP-Datei) im XML-Format (Extensible Markup Language) gespeichert. Dieser Artikel enthält ein Microsoft Visual Basic-Beispielskript, mit dem Administratoren die in den MSP-Dateien des OAT gespeicherten Einstellungen anzeigen können.
Übersicht über Windows Script Host
Verwenden Sie zum Ausführen des Skripts Microsoft Windows Script Host (WSH), einen sprachenunabhängigen Skripthost für Windows Script-kompatible Skriptmodule. WSH unterstützt die Ausführung von Skripts sowohl vom Windows-Desktop als auch von der Eingabeaufforderung.
Zum Ausführen von Skripts von Windows stellt WScript.exe ein Windows-basiertes Dialogfeld zum Festlegen von Skripteigenschaften bereit. Zum Ausführen von Skripts von der Eingabeaufforderung stellt CScript.exe Befehlszeilenoptionen zum Festlegen von Skripteigenschaften zur Verfügung.
WSH bietet Drag & Drop-Unterstützung für Skripts. Das bedeutet, dass Sie Dateien auf ein WSH-Skript ziehen können. Die Dateinamen werden an der Befehlszeile in Argumente übersetzt.
Weitere Informationen zu WSH finden Sie in den folgenden Ressourcen auf der MSDN-Website:
Beispielskript "ExtractOctXml.vbs"
In den folgenden Abschnitten finden Sie das Visual Basic-Beispielskript ExtractOctXml.vbs und Anweisungen zur Verwendung des Skripts zum Extrahieren von XML-Metadaten aus MSP-Anpassungsdateien des OAT.
Zum Speichern des Beispielskripts öffnen Sie einen Text-Editor, z. B. Microsoft Editor. Kopieren Sie den Skriptcode in diesem Abschnitt, und fügen Sie ihn in eine Datei ein. Speichern Sie die Skriptdatei unter 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
Ausführen des Skripts
Die Datei ExtractOctXml.vbs kann in einem beliebigen Ordner auf dem Computer gespeichert werden. Sie können das Skript ExtractOctXml.vbs verwenden, indem Sie einfach die gewünschte MSP-Anpassungsdatei aus dem OAT auf das Skript ziehen und ablegen. Die XML-Metadaten werden von dem Skript im Ordner Temp des Benutzers unter dem Namen <Name des OAT-Patches>.xml extrahiert. Die XML-Datei wird dann zur Anzeige an Internet Explorer übergeben.
Ausführen des Skripts
Öffnen Sie den Ordner mit der Datei ExtractOctXml.vbs in Windows Explorer.
Ziehen Sie eine Kopie der MSP-Datei, die Sie anzeigen möchten, auf die Datei ExtractOctXml.vbs, die im Windows Explorer-Fenster angezeigt wird.
Wenn die XML-Datei geöffnet ist, können Sie die verschiedenen Abschnitte erweitern und reduzieren, um die Einstellungen in der MSP-Anpassungsdatei anzuzeigen.
Das <UserSettings>-Element der Datei metadata.xml enthält die in der MSP-Anpassungsdatei konfigurierten Benutzereinstellungen, und das <Options>-Element der Datei metadata.xml enthält Einstellungen im Zusammenhang mit dem Featurestatus.
Ausführen des Skripts mithilfe der Befehlszeile
Klicken Sie im Startmenü auf Ausführen, und geben Sie cmd ein.
Geben Sie im Befehlsfenster Folgendes ein:
cscript <Skriptpfad> \ExtractOCTXml.vbs <Pfad und Dateiname der MSP-Datei des OAT>
- oder -
wscript <Skriptpfad> \ExtractOCTXml.vbs <Pfad und Dateiname der MSP-Datei des OAT>
Die XML-Datei wird zur Anzeige in Internet Explorer geladen.
Anzeigen der XML-Inhalte einer MSP-Anpassungsdatei
Mithilfe von OPA-Einstellungsdateien wird die Benutzeroberfläche Benutzereinstellungen ändern im OAT aufgefüllt und werden während der Installation die richtigen Registrierungsschlüssel und -werte hinzugefügt. OPA-Dateien mit Office 2007-Einstellungen sind im Ordner Admin im Stamm des Office 2007-Quelldateiordners oder der Office 2007-CD gespeichert.
In der folgenden Tabelle werden die übergeordneten Abschnitte in der MSP-Datei metadata.xml beschrieben.
Abschnitt | Beschreibung |
---|---|
<Customization baseFolder> |
Gibt den Namen und Pfad der MSP-Anpassungsdatei an. Diese Elemente werden intern vom Code verwendet. Sie stellen nicht die eigentlichen Anpassungen dar. |
<Product id> |
Enthält Informationen zu den lokalen Installationsquellenpaketen, zum Installationsstatus (z. B. Immer installiert), zu MUI-Sprachpaketen, Product IDs, Features und IDs, Verknüpfungen und aktualisierbaren Anwendungen. Diese Elemente werden intern vom Code verwendet. Sie stellen nicht die eigentlichen Anpassungen dar. |
<SecurityApps> |
Führt die Anwendungen auf, für die spezifische Sicherheitsspeicherorte möglich sind, wie in der Dropdownliste im Bereich Setup\Office-Sicherheitseinstellungen\Der Liste vertrauenswürdiger Speicherorte die folgendenPfade hinzufügen im OAT angegeben. Diese Elemente werden intern vom Code verwendet. Sie stellen nicht die eigentlichen Anpassungen dar. |
<SecurityAppSettings> |
Führt die Sicherheitseinstellungen auf, die im OAT im Bereich Setup\Office-Sicherheitseinstellungen angezeigt werden. Anpassungen an dieser Liste erscheinen weiter unten im <SecuritySettings>-Element. Diese Elemente werden intern vom Code verwendet. Sie stellen nicht die eigentlichen Anpassungen dar. |
<SecurityPossibleSettingValues> |
Führt die Sicherheitsoptionen auf, die für <SecurityAppSettings> zur Verfügung stehen. Diese Elemente werden intern vom Code verwendet. Sie stellen nicht die eigentlichen Anpassungen dar. |
<GlobalSettings> |
Stellt Informationen zu den Setup-Eigenschaften im Abschnitt Setup\Setup-Eigenschaften ändern des OAT bereit. |
<UserSettings> |
Enthält Informationen und Registrierungsschlüsseldaten zu sämtlichen Einstellungen, die im OAT im Abschnitt Features\Benutzereinstellungen ändern konfiguriert sind. |
<File> |
Enthält Informationen zu sämtlichen Dateien, die mithilfe der Optionen Zusätzliche Inhalte\Dateien hinzufügen oder Dateien entfernen im OAT hinzugefügt oder entfernt wurden. |
<Registry> |
Enthält Informationen zu sämtlichen Registrierungsschlüsseln, die mithilfe der Optionen Zusätzliche Inhalte\Registrierungseinträge hinzufügen oder Registrierungseinträge entfernen im OAT hinzugefügt oder entfernt wurden. |
<Shortcuts> |
Enthält Informationen zu Verknüpfungen, die mithilfe der Optionen Zusätzliche Inhalte\Verknüpfungen konfigurieren im OAT hinzugefügt wurden. |
<Install> |
Stellt Informationen zu den Installationseinstellungen in den Optionen Setup\Installationsspeicherort und Name der Organisation, Setup\Weitere Netzwerkquellen und Setup\Lizenzierung und Benutzeroberfläche im OAT bereit. |
<ChildInstalls> |
Enthält Informationen zu zusätzlichen Aktionen nach der Installation in den Optionen Einstellungen/Installationen hinzufügen und Programme ausführen im OAT. |
<Options> |
Enthält Einstellungen im Zusammenhang mit dem Anwendungsfeaturestatus. |
<SecuritySettings> |
Enthält Informationen zu Änderungen an den Standardsicherheitseinstellungen, die im OAT im Abschnitt Setup\Office-Sicherheitseinstellungen\Standardsicherheitseinstellungen vorgenommen wurden. |
<SecurityTrustedLocations> |
Stellt Informationen zu vertrauenswürdigen Speicherorten bereit, die über die Optionen Setup\Office-Sicherheitseinstellungen im OAT (unter Der Liste vertrauenswürdiger Speicherorte die folgenden Pfade hinzufügen) hinzugefügt wurden. |
<SecurityCertificates> |
Stellt Informationen zu Zertifikaten bereit, die über die Optionen Setup\Office-Sicherheitseinstellungen im OAT (unter Der Liste vertrauenswürdiger Herausgeber die folgenden digitalen Zertifikate hinzufügen) hinzugefügt wurden. |
<Outlook> |
Enthält Informationen zu Anpassungen am Outlook-Profil, die unter den Optionen für Outlook im OAT vorgenommen wurden. |
Im folgenden Beispiel wird veranschaulicht, wie Einstellungen in der resultierenden XML-Datei gefunden werden, die in Internet Explorer geöffnet wird, wenn Sie das Skript ExtractOctXml.vbs für eine MSP-Anpassungsdatei des OAT ausführen.
Beispiel
In diesem Beispiel wird eine MSP-Anpassungsdatei aus Microsoft Office Professional 2007 Plus verwendet. Nur Microsoft Office Access 2007 ist installiert, und das Standarddateiformat für Access, Access 2007, ist konfiguriert. Die Benutzereinstellung Standarddateiformat für Access befindet sich auf dem Bildschirm Benutzereinstellungen ändern des OAT im Knoten Microsoft Office Access 2007\Verschiedenes.
Verwenden Sie einen Text-Editor, z. B. Microsoft Editor, zum Öffnen der OPA-Einstellungsdatei für Access 2007, access12.opa (im Stammverzeichnis des Office 2007-Quelldateipfads im Ordner Admin). Suchen Sie nach der im OAT für die Benutzereinstellung Standarddateiformat angezeigten Zeichenfolge, Standarddateiformat. Sie gelangen zum folgenden Abschnitt der Datei 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
Anhand dieser Benutzereinstellungsinformationen können Sie den Registrierungsschlüssel für die Einstellung (in diesem Fall Software\Microsoft\Office\12.0\Access\Settings) und die möglichen Registrierungswerte bestimmen. Ein Wert von 12 für Standarddateiformat legt das Standarddateiformat auf Access 2007 fest, während ein Wert von 10 für Standarddateiformat das Standarddateiformat auf Access 2002-2003 festlegt.
Nachdem Sie diese Informationen der Datei access12.opa entnommen haben, können Sie die Anpassungsdatei metadata.xml nach dem gewünschten Registrierungsschlüssel oder -wert durchsuchen, z. B. Software\Microsoft\Office\12.0\Access\Settings. In diesem Beispiel würden Sie dadurch in den folgenden Abschnitt der Datei metadata.xml gelangen:
<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}" />
Anhand der Daten aus der OPA-Datei können Sie sehen, dass der Schlüssel für Standarddateiformat den Wert 12 hat, wodurch das Standarddateiformat auf Access 2007 festgelegt wird.
Nachfolgend sehen Sie einen Auszug aus dem Abschnitt <Options> der XML-Datei in diesem Beispiel:
<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" />
Weitere Informationen zu OptionState-IDs finden Sie im Abschnitt OptionState-Element des Artikels "Config.xml" in 2007 Office System.