다음을 통해 공유


Office 사용자 지정 도구 사용자 지정 파일의 XML 콘텐츠 보기

 

적용 대상: Office 2010

마지막으로 수정된 항목: 2016-11-29

관리자는 OCT(Office 사용자 지정 도구)를 사용하여 Microsoft Office 2010의 설치를 사용자 지정합니다. 이러한 사용자 지정 내용은 XML(Extensible Markup Language) 형식을 사용하는 설치 사용자 지정 파일(.msp 파일)에 저장됩니다. 이 문서에는 관리자가 설치 사용자 지정 .msp 파일에 저장된 설정을 보는 데 사용할 수 있는 Microsoft Visual Basic 스크립트 예제가 제공되어 있습니다.

이 문서의 내용:

  • Windows 스크립트 호스트 개요

  • ExtractOctXml.vbs 스크립트 예제

  • 스크립트 실행

  • .msp 사용자 지정 파일의 XML 콘텐츠 보기

Windows 스크립트 호스트 개요

스크립트를 실행하려면 Windows 스크립트 호환 스크립팅 엔진의 언어 독립적 스크립팅 호스트인 WSH(Windows 스크립트 호스트)를 사용합니다. WSH를 사용하면 Windows 바탕 화면과 명령 프롬프트 모두에서 스크립트를 실행할 수 있습니다.

Windows에서 스크립트를 실행하도록 WScript.exe에서 스크립트 속성을 설정하는 Windows 기반 대화 상자를 제공합니다. 또한 명령 프롬프트에서 스크립트를 실행하도록 CScript.exe에서 스크립트 속성을 설정하는 명령줄 스위치를 제공합니다.

WSH에서는 스크립트에 대해 끌어서 놓기를 지원합니다. 즉, WSH 스크립트로 파일을 끌어다 놓을 수 있습니다. 이때 파일 이름은 명령줄의 인수로 변환됩니다.

WSH에 대한 자세한 내용은 MSDN 웹 사이트의 다음 리소스를 참조하십시오.

ExtractOctXml.vbs 스크립트 예제

다음 섹션에서는 예제 Visual Basic 스크립트인 ExtractOctXml.vbs를 제공하고 해당 스크립트를 사용하여 OCT .msp 사용자 지정 파일에서 XML 메타데이터를 추출하는 방법에 대한 지침을 설명합니다.

스크립트 예제를 저장하려면 메모장과 같은 텍스트 편집기를 열고 이 섹션의 스크립트 코드를 파일로 복사하여 붙여 넣습니다. 스크립트 파일은 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

스크립트 실행

ExtractOctXml.vbs 파일은 컴퓨터의 어디에든 저장할 수 있습니다. ExtractOctXml.vbs 스크립트를 사용하려면 구성된 설정을 확인할 OCT .msp 사용자 지정 파일을 끌어다 스크립트에 놓으면 됩니다. 이 스크립트는 <OCT 업데이트의 이름>.xml(예: Access.MSP.xml)의 메타데이터 XML을 사용자의 Temp 폴더로 추출합니다. 그런 다음 이 XML 파일은 Internet Explorer로 전달되어 표시됩니다.

스크립트를 실행하려면

  1. Windows 탐색기를 사용하여 ExtractOctXml.vbs 파일이 들어 있는 폴더를 엽니다.

  2. 보려는 설치 사용자 지정 .msp 파일의 복사본을 Windows 탐색기 창에 표시된 ExtractOctXml.vbs로 끌어다 놓습니다.

  3. XML 파일이 열리면 다양한 섹션을 확장하거나 축소하여 .msp 사용자 지정 파일에 포함된 설정을 볼 수 있습니다.

    Access.MSP.xml metadata.xml 파일의 <UserSettings> 요소에는 .msp 사용자 지정 파일에 구성된 사용자 설정이 포함되고 Access.MSP.xml metadata.xml 파일의 <Options> 요소에는 기능 상태와 관련된 설정이 포함됩니다.

명령줄을 사용하여 스크립트를 실행하려면

  1. 시작을 클릭하고 실행을 클릭한 다음 cmd를 입력합니다.

  2. 명령 프롬프트 창에서 다음을 입력합니다.

    cscript <스크립트 경로> \ExtractOCTXml.vbs <OCT MSP 경로 및 파일 이름>

    -또는-

    wscript <스크립트 경로> \ExtractOCTXml.vbs <OCT MSP 경로 및 파일 이름>

    XML 파일이 Internet Explorer에 로드되어 표시됩니다.

.msp 사용자 지정 파일의 XML 콘텐츠 보기

OCT에서는 설정(.opax) 파일을 사용하여 OCT의 사용자 설정 수정 사용자 인터페이스를 채우고 설치 도중 적절한 레지스트리 키와 값을 추가합니다. Office 2010 설정 .opax 파일은 Office 2010 원본 파일 위치 또는 CD의 루트에 있는 Admin 폴더에 저장됩니다.

다음 표에서는 .msp metadata.xml 파일에 포함된 최상위 섹션에 대해 설명합니다.

섹션 설명

<Customization platform - baseFolder>

.msp 사용자 지정 파일 이름 및 경로 정보를 제공합니다. 이러한 요소는 내부적으로 코드에 의해 사용되며 실제 사용자 지정을 나타내지는 않습니다.

<Product id>

로컬 설치 원본 패키지, 설치 상태(예: 항상 설치), 언어 MUI 패키지, 제품 ID, 기능 및 ID, 바로 가기 및 업그레이드 가능한 응용 프로그램에 대한 정보를 제공합니다.

이러한 요소는 내부적으로 코드에 의해 사용되며 실제 사용자 지정을 나타내지는 않습니다.

<SecurityApps>

OCT의 설치\Office 보안 설정신뢰할 수 있는 위치 목록에다음 경로 추가 목록 영역에 있는 드롭다운 목록에 표시된 대로 특정 보안 위치를 가질 수 있는 응용 프로그램을 나열합니다.

이러한 요소는 내부적으로 코드에 의해 사용되며 실제 사용자 지정을 나타내지는 않습니다.

<SecurityAppSettings>

OCT의 설치\Office 보안 설정 영역에 표시되는 보안 설정을 나열합니다. 이 목록에 대한 사용자 지정 내용은 아래의 <SecuritySettings> 요소에 표시됩니다.

이러한 요소는 내부적으로 코드에 의해 사용되며 실제 사용자 지정을 나타내지는 않습니다.

<SecurityPossibleSettingValues>

<SecurityAppSettings>에 대해 사용 가능한 보안 옵션을 나열합니다.

이러한 요소는 내부적으로 코드에 의해 사용되며 실제 사용자 지정을 나타내지는 않습니다.

<GlobalSettings>

OCT의 설치\설치 속성 수정 섹션에 있는 설치 속성에 대한 정보를 제공합니다.

<UserSettings>

OCT의 기능\사용자 설정 수정 섹션에 구성된 모든 설정에 대한 정보 및 레지스트리 키 데이터를 제공합니다.

<File>

OCT의 추가 콘텐츠\파일 추가 또는 파일 제거 옵션을 사용하여 추가하거나 제거한 모든 파일에 대한 정보를 제공합니다.

<Registry>

OCT의 추가 콘텐츠\레지스트리 항목 추가 또는 레지스트리 항목 제거 옵션을 사용하여 추가하거나 제거한 모든 레지스트리 키에 대한 정보를 제공합니다.

<Shortcuts>

OCT의 추가 콘텐츠\바로 가기 구성 옵션을 사용하여 추가한 바로 가기에 대한 정보를 제공합니다.

<Install>

OCT의 설치\설치 위치 및 조직 이름, 설치\추가 네트워크 원본설치\라이선싱 및 사용자 인터페이스 옵션에 있는 설치 설정에 대한 정보를 제공합니다.

<ChildInstalls>

OCT의 설치/설치 추가 및 프로그램 실행 옵션에 있는 설치 후 추가 작업에 대한 정보를 제공합니다.

<Options>

응용 프로그램 기능 상태와 관련된 설정을 포함합니다.

<SecuritySettings>

OCT의 설치\Office 보안 섹션\기본 보안 설정 섹션을 사용하여 기본 보안 설정에 적용한 변경 내용에 대한 정보를 제공합니다.

<SecurityTrustedLocations>

OCT의 설치\Office 보안 설정 옵션인 신뢰할 수 있는 위치 목록에 다음 경로 추가에 추가된 신뢰할 수 있는 위치에 대한 정보를 제공합니다.

<SecurityCertificates>

OCT의 설치\Office 보안 설정 옵션인 신뢰할 수 있는 게시자 목록에 다음 디지털 인증서 추가에 추가된 인증서에 대한 정보를 제공합니다.

<Outlook>

OCT의 Outlook 옵션으로 작성된 Outlook 프로필 사용자 지정에 대한 정보를 제공합니다.

다음 예제에서는 OCT .msp 사용자 지정 파일로 ExtractOctXml.vbs 스크립트를 실행할 때 Internet Explorer에서 열리는 결과 XML 파일(이 예제의 경우 Access.MSP.xml)에서 설정을 찾는 방법을 보여 줍니다.

예제

이 예제에서는 Office 2010 .msp 사용자 지정 파일을 사용합니다. 또한 Microsoft Access 2010만 설치되어 있고 Microsoft Office Access 2007 파일 형식이 사용하도록 설정되어 있습니다. Access의 기본 파일 형식 사용자 설정은 OCT의 사용자 설정 수정 섹션에서 Microsoft Office Access 2010\기타 노드에 있습니다.

사용자 지정 metadata.xml 파일인 Access.MSP.xml에서 Default file format 같은 레지스트리 키 또는 값을 검색할 수 있습니다. 이 예제에서 “default file format”을 검색하면 Access.MSP.xml metadata.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}" />

메모장 같은 텍스트 편집기를 사용하여 Access 2010 .opax 설정 파일인 access14.opax를 엽니다. 이 파일은 Office 2010 원본 파일 위치 루트의 Admin 폴더에 있습니다. 기본 파일 형식 사용자 설정에 해당하는 DefaultFileFormat 문자열을 검색합니다. 그러면 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>

이 사용자 설정 정보에서 설정에 대한 레지스트리 키(이 경우 software\policies\microsoft\office\14.0\access\settings) 및 가능한 레지스트리 값을 확인할 수 있습니다. Default File Format 값이 12면 기본 파일 형식이 Access 2007로 설정되고, Default File Format 값이 10이면 기본 파일 형식이 Access 2002 - 2003으로 설정됩니다.

.opax 파일의 정보를 사용하여 Default File Format 키 값이 12라는 것을 알 수 있으며, 이 값에 따라 기본 파일 형식은 Access 2007로 설정됩니다.

다음 발췌 부분에서는 이 예제에서 Access.MSP.xml 파일의 <Options> 섹션에 나열된 일부 Access Option id 값을 보여 줍니다.

<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" />

OptionState ID에 대한 자세한 내용은 Config.xml file in Office 2010에서 OptionState 요소를 참조하십시오.