移行 XML ファイルとは

XML ファイルを使うと、ユーザー状態移行ツール (USMT) 5.0 の基本的な移行の動作を変更できます。これらのファイルには、USMT ツールでファイルと設定を収集および適用する場所と方法に関する指示が含まれます。USMT には、基本的な移行のカスタマイズに使う 3 種類の XML ファイルがあります。MigDocs.xml ファイルと MigUser.xml ファイルは、移行元コンピューターでのファイルの検出方法を変更するのに使います。MigApps.xml ファイルは、サポートされているアプリケーション設定を移行するのに必要です。カスタムの XML ファイルと Config.xml ファイルを作成して編集し、移行をさらにカスタマイズすることもできます。

ここでは、既定とカスタムの移行 XML ファイルの概要と、カスタマイズ バージョンの MigDocs.xml ファイルの作成と編集のガイドラインについて説明します。MigDocs.xml ファイルでは、USMT に用意されている新しい GenerateDocPatterns 関数を使って、移行元コンピューターでユーザー ドキュメントを自動的に検出します。

このトピックの内容

Config.xml ファイルの概要

MigApp.xml ファイルの概要

MigDocs.xml ファイルの概要

MigUser.xml ファイルの概要

複数の XML ファイルの使用

     ユーザー ファイルを移行するための XML 規則

カスタム XML ファイルの作成と編集

     GenerateDocPatterns 関数

     システム コンテキストとユーザー コンテキストについて

     カスタマイズ バージョンの XML ファイルのサンプル移行規則

     対象から除外する規則の使用例

     対象に含める規則の使用例

次の手順

Config.xml ファイルの概要

Config.xml ファイルは ScanState ツールの /genconfig オプションで作成される構成ファイルです。このファイルを使うと、USMT で移行するオペレーティング システム コンポーネントを変更できます。Config.xml ファイルは、次の例のように、他の XML ファイルと組み合わせて使うことができます: scanstate /i:migapps.xml /i:migdocs.xml /genconfig:c:\myFolder\config.xmlその場合、Config.xml ファイルを通じて、ユーザー プロファイル、データ、設定など、移行のさまざまな要素をきめ細かく制御できます。他の XML ファイルの変更や作成は必要ありません。Config.xml ファイルについて詳しくは、「USMT XML ファイルのカスタマイズ」と「Config.xml ファイル」をご覧ください。

注意

Config.xml ファイルで XML 要素を変更するときは、ファイルからその要素を削除するのではなく、要素を編集し、migrate プロパティを no に設定してください。プロパティを設定する代わりに要素を削除した場合、他の XML ファイルの規則によってコンポーネントが移行対象のままになる可能性があります。

MigApp.xml ファイルの概要

USMT と同時にインストールされる MigApp.xml ファイルには、「USMT によって移行されるもの」に記載されているアプリケーションの設定を移行するための指示が含まれます。ScanState ツールと LoadState ツールを使う際には、アプリケーションの設定を移行するために、/i オプションを使って MigApp.xml ファイルを含める必要があります。MigDocs.xml ファイルと MigUser.xml ファイルは、アプリケーションの設定の移行には使いません。カスタム XML ファイルを作成して、追加のアプリケーションを含めることができます。詳しくは、「USMT XML ファイルのカスタマイズ」をご覧ください。

重要

MigApps.xml ファイルは、Microsoft(R) Office Outlook(R) に関連付けられている .pst ファイルだけを検出して移行します。Outlook に関連付けられていない .pst ファイルの移行について詳しくは、このドキュメントの「カスタマイズ バージョンの XML ファイルのサンプル移行規則」をご覧ください。

MigDocs.xml ファイルの概要

MigDocs.xml ファイルでは、新しい GenerateDocPatterns ヘルパー関数を使って、USMT がファイルの場所に基づいて移行元コンピューターからファイルを移行するための指示を作成します。ScanState ツールと LoadState ツールで MigDocs.xml ファイルを使うと、XML の指示なしで USMT を使う場合よりも移行の対象を絞り込むことができます。

既定の MigDocs.xml ファイルで移行されるものは以下のとおりです。

  • %WINDIR%、%PROGRAMFILES%、%PROGRAMDATA%、%USERS% を除く、ドライブのルートにある全ファイル。

  • すべての固定ドライブのルート ディレクトリにある全フォルダー。例: c:\data_mail\*[*]

  • システム プロファイルのファイルを除く、Profiles フォルダーのルートにある全ファイル。例: c:\users\name[mail.pst]

  • システム プロファイル フォルダーを除く、Profiles フォルダーのルートにある全フォルダー。例: c:\users\name\new folder\*[*]

  • 標準の共有フォルダー:

    • CSIDL_COMMON_DESKTOPDIRECTORY

    • CSIDL_COMMON_FAVORITES

    • CSIDL_COMMON_DOCUMENTS

    • CSIDL_COMMON_MUSIC

    • CSIDL_COMMON_PICTURES

    • CSIDL_COMMON_VIDEO

    • FOLDERID_PublicDownloads

  • 各ユーザーの標準のユーザー プロファイル フォルダー:

    • CSIDL_MYDOCUMENTS

    • CSIDL_MYPICTURES

    • FOLDERID_OriginalImages

    • CSIDL_MYMUSIC

    • CSIDL_MYVIDEO

    • CSIDL_FAVORITES

    • CSIDL_DESKTOP

    • CSIDL_QUICKLAUNCH

    • FOLDERID_Contacts

    • FOLDERID_Libraries

    • FOLDERID_Downloads

    • FOLDERID_SavedGames

    • FOLDERID_RecordedTV

既定の MigDocs.xml ファイルで移行されないものは以下のとおりです。

  • 隠し属性とシステム属性の両タグが付いたファイル。

  • リムーバブル ドライブ上のファイルとフォルダー。

  • %WINDIR% フォルダー、%PROGRAMDATA% フォルダー、%PROGRAMFILES% フォルダーのデータ。

  • インストール済みのアプリケーションが含まれるフォルダー。

ScanState ツールで /genmigxml オプションを使って、移行対象のファイルを調べたり変更したりすることもできます。詳しくは、このドキュメントの「カスタム XML ファイルの作成と編集」をご覧ください。

MigUser.xml ファイルの概要

MigUser.xml ファイルには、USMT がファイル名拡張子に基づいてユーザー ファイルを移行するための指示が含まれます。ScanState ツールと LoadState ツールで MigUser.xml ファイルを使うと、XML の指示なしで USMT を使う場合よりも移行の対象を絞り込むことができます。MigUser.xml ファイルは、標準のユーザー プロファイル フォルダーにあるすべてのファイルと、指定されたファイル名拡張子を持つ、コンピューター上のすべてのファイルを収集します。

既定の MigUser.xml ファイルで移行されるものは以下のとおりです。

  • 次に示す標準のユーザー プロファイル フォルダーにある全ファイル。

    • CSIDL_MYVIDEO

    • CSIDL_MYMUSIC

    • CSIDL_DESKTOP

    • CSIDL_STARTMENU

    • CSIDL_PERSONAL

    • CSIDL_MYPICTURES

    • CSIDL_FAVORITES

    • CSIDL_QUICK LAUNCH

  • 次の拡張子のファイル:

    .qdf、.qsd、.qel、.qph、.doc*、.dot*、.rtf、.mcw、.wps、.scd、.wri、.wpd、.xl*、.csv、.iqy、.dqy、.oqy、.rqy、.wk*、.wq1、.slk、.dif、.ppt*、.pps*、.pot*、.sh3、.ch3、.pre、.ppa、.txt、.pst、.one*、.vl*、.vsd、.mpp、.or6、.accdb、.mdb、.pub

既定の MigUser.xml ファイルで移行されないものは以下のとおりです。

  • 隠し属性とシステム属性の両タグが付いたファイル。

  • リムーバブル ドライブ上のファイルとフォルダー。

  • %WINDIR% フォルダー、%PROGRAMFILES% フォルダー、%PROGRAMDATA% フォルダーのデータ。

  • ユーザー プロファイル外部のフォルダーにあるファイルの ACL。

MigUser.xml ファイルのコピーを作成し、それに変更を加えて、標準のユーザー プロファイル フォルダーとファイル名拡張子を追加または除外できます。移行元コンピューターから移行するファイルの拡張子をすべて把握している場合は、MigUser.xml ファイルを使って、ファイルの場所に関係なく該当するすべてのデータを移動してください。ただしその場合、想定よりも多くのファイルが移行の対象になることがあります。たとえば、.jpg ファイルをすべて移行することにした場合、移行元コンピューターにインストールされているレガシ アプリケーションのサムネイルやロゴなどの画像ファイルが移行対象になることがあります。

注意

MigUser.xml ファイルの規則にファイル名拡張子を追加すると、その分だけ ScanState ツールで移行対象ファイルを収集するのに要する時間が増えます。移行するファイルの種類が 300 を超えると、移行に時間がかかる可能性があります。データの移行を調整するその他の方法について詳しくは、このドキュメントの「複数の XML ファイルの使用」をご覧ください。

複数の XML ファイルの使用

ScanState ツールと LoadState ツールでは、複数の XML ファイルを使うことができます。既定の各 XML ファイル (USMT に付属のファイルと、USMT によって生成されるファイル) は、移行の特定のコンポーネントに合わせて構成されています。カスタム XML ファイルを使って、追加の移行規則でこれらの既定のファイルを補完することもできます。

XML 移行ファイル 次のコンポーネントを変更します。

Config.xml ファイル

デスクトップの壁紙や背景のテーマなど、オペレーティング システムのコンポーネント。

他の既定の XML ファイルを使って config.xml ファイルを生成して、アプリケーションとドキュメントの設定を config.xml に追加することもできます。詳しくは、「USMT XML ファイルのカスタマイズ」と「Config.xml ファイル」をご覧ください。

MigApps.xml ファイル

アプリケーション設定。

MigUser.xml ファイルまたは MigDocs.xml ファイル

ユーザー ファイルとプロファイル設定。

カスタム XML ファイル

他の XML ファイルに含まれる規則にないアプリケーション設定、ユーザー プロファイル設定、ユーザー ファイル。

たとえば、次の例のように、1 回の移行ですべての種類の XML 移行ファイルを使うことができます。

Scanstate <store> /config:c:\myFolder\config.xml /i:migapps.xml /i:migdocs.xml /i:customrules.xml

ユーザー ファイルを移行するための XML 規則

重要

同じコマンドで MigUser.xml ファイルと MigDocs.xml ファイルを同時に指定することは避けてください。両方の XML ファイルを使うと、移行されたファイルが一部重複する可能性があります。この問題は、各 XML ファイルに含まれる対象の場所の指示が競合しているときに発生します。対象のファイルは移行時に 1 回保存されますが、各 XML ファイルによって、移行先コンピューター上の異なる場所に適用されます。

データセットが不明であるか、多数のファイルが標準のユーザー プロファイル フォルダー以外の場所に保存されている場合は、MigUser.xml ファイルよりも MigDocs.xml の方が適しています。MigDocs.xml ファイルの方が幅広いデータを収集できるためです。MigDocs.xml ファイルは、場所に基づいてデータのフォルダーを移行します。MigUser.xml ファイルは、指定されたファイル名拡張子を持つファイルだけを移行します。

移行をきめ細かく制御したい場合は、カスタム XML ファイルを作成できます。詳しくは、このドキュメントの「カスタム XML ファイルの作成と編集」をご覧ください。

カスタム XML ファイルの作成と編集

/genmigxml コマンド ライン オプションを使って、移行対象に含めるファイルを決めることができます。/genmigxml オプションを使うと、指定した場所にファイルが作成されるため、XML 規則を調べ、必要に応じて修正できます。

注意

USMT を再インストールすると、既定の移行 XML ファイルが上書きされ、これらのファイルに直接行ったカスタマイズがすべて失われます。カスタムの移行規則用に XML ファイルを別個に作成し、安全な場所に保存することを検討してください。

移行元コンピューター用の XML 移行規則ファイルを生成するには、次の手順に従います。

  1. [スタート][すべてのプログラム][アクセサリ] をクリックし、[コマンド プロンプト] を右クリックして、[別のユーザーとして実行] をクリックします。

  2. 管理者特権を持つアカウントを選び、パスワードを指定して、[OK] をクリックします。

  3. コマンド プロンプトで、次のように入力します。

    cd /d <USMTpath>
    
    scanstate.exe /genmigxml: <filepath.xml>
    

    <USMTpath> は、USMT のファイルとツールを保存した、移行元コンピューター上の場所です。<filepath.xml> は、レポートを保存するファイルへの完全パスです。たとえば、次のように入力します。

    cd /d c:\USMT
    
    scanstate.exe /genmigxml:"C:\Documents and Settings\USMT Tester\Desktop\genMig.xml"
    

GenerateDocPatterns 関数

MigDocs.xml ファイルは、3 つのブール値を受け取る GenerateDocPatterns 関数を呼び出します。設定を変更して、MigDocs.xml ファイルが移行用の XML ファイルを生成する方法を変更できます。

設定 既定値

ScanProgramFiles

ScanProgramFiles 引数は、GenerateDocPatterns 関数がシステム コンテキストで呼び出された場合にのみ有効です。この引数は、Program Files ディレクトリをスキャンし、既知のアプリケーションの登録済みのファイル名拡張子を収集するかどうかを示します。

たとえば、TRUE に設定した場合、この関数は Microsoft Office ディレクトリ下の .doc ファイルを検出して移行します。.doc は、Microsoft Office アプリケーションに対して登録されているファイル名拡張子であるためです。GenerateDocPatterns 関数は、.doc ファイルを対象に含めるこのパターンを生成します。

<pattern type="File">C:\Program Files\Microsoft Office\*[*.doc]</pattern>

対象となっているフォルダーの子フォルダーにインストール済みのアプリケーションが含まれる場合、ScanProgramFiles はその子フォルダーの除外規則も作成します。アプリケーション フォルダー内のすべてのフォルダーで、登録済みのファイル名拡張子が繰り返しスキャンされます。

False

IncludePatterns

IncludePatterns 引数は、対象から除外するパターンと対象に含めるパターンのどちらを XML で生成するかを示します。この引数が TRUE に設定されている場合、GenerateDocPatterns 関数は対象に含めるパターンを生成します。その場合は、この関数を <include> 要素の下に追加する必要があります。この引数を FALSE に変更すると、対象から除外するパターンが生成されます。その場合は、この関数を <exclude> 要素の下に追加する必要があります。

True

SystemDrive

SystemDrive 引数は、すべての固定ドライブのパターンを生成するか、システム ドライブのみのパターンを生成するかを示します。この引数を TRUE に変更すると、すべてのパターンがシステム ドライブに制限されます。

False

使い方

MigXmlHelper.GenerateDocPatterns ("<ScanProgramFiles>", "<IncludePatterns>", "<SystemDrive>")

システム ドライブに限定した、対象に含めるデータ パターンを作成する場合:

<include filter='MigXmlHelper.IgnoreIrrelevantLinks()'>

     <objectSet>

        <script>MigXmlHelper.GenerateDocPatterns ("FALSE","TRUE","TRUE")</script>

     </objectSet>

</include>

対象に含める規則を作成して、%PROGRAMFILES% ディレクトリから登録済みの拡張子を持つファイルを収集する場合:

<include filter='MigXmlHelper.IgnoreIrrelevantLinks()'>

     <objectSet>

        <script>MigXmlHelper.GenerateDocPatterns ("TRUE","TRUE","FALSE")</script>

     </objectSet>

</include>

対象から除外するデータ パターンを作成する場合:

<exclude filter='MigXmlHelper.IgnoreIrrelevantLinks()'>

     <objectSet>

        <script>MigXmlHelper.GenerateDocPatterns ("FALSE","FALSE","FALSE")</script>

     </objectSet>

</exclude>

システム コンテキストとユーザー コンテキストについて

移行 XML ファイルには、コンテキストの設定が異なる 2 つの <component> 要素があります。システム コンテキストは、ユーザー プロファイル ディレクトリに保存されていないコンピューター上のファイルに適用されます。一方、ユーザー コンテキストは、個々のユーザーに固有のファイルに適用されます。

システム コンテキスト

システム コンテキストには、ユーザー プロファイル ディレクトリ以外の場所のデータに対する規則が含まれます。たとえば、GenerateDocPatterns 関数を MigDocs.xml ファイルのシステム コンテキストで呼び出すと、すべての共通シェル フォルダー、ハード ドライブのルート ディレクトリ内のファイル、ハード ドライブのルートにあるフォルダーに対するパターンが作成されます。対象となるフォルダーは次のとおりです。

  • CSIDL_COMMON_DESKTOPDIRECTORY

  • CSIDL_COMMON_FAVORITES

  • CSIDL_COMMON_DOCUMENTS

  • CSIDL_COMMON_MUSIC

  • CSIDL_COMMON_PICTURES

  • CSIDL_COMMON_VIDEO

  • FOLDERID_PublicDownloads

ユーザー コンテキスト

ユーザー コンテキストには、ユーザー プロファイル ディレクトリ内のデータに対する規則が含まれます。GenerateDocPatterns 関数を MigDocs.xml ファイルのユーザー コンテキストで呼び出すと、すべてのユーザー シェル フォルダー、プロファイルのルートにあるファイル、プロファイルのルートにあるフォルダーに対するパターンが作成されます。対象となるフォルダーは次のとおりです。

  • CSIDL_MYDOCUMENTS

  • CSIDL_MYPICTURES

  • FOLDERID_OriginalImages

  • CSIDL_MYMUSIC

  • CSIDL_MYVIDEO

  • CSIDL_FAVORITES

  • CSIDL_DESKTOP

  • CSIDL_QUICKLAUNCH

  • FOLDERID_Contacts

  • FOLDERID_Libraries

  • FOLDERID_Downloads

  • FOLDERID_SavedGames

  • FOLDERID_RecordedTV

注意

ユーザー コンテキストが割り当てられたコンポーネントに含まれる規則は、コンピューター上のユーザー プロファイルごとに実行されます。MigDocs.xml ファイルによって複数回スキャンされるファイルは、移行ストアに 1 回だけコピーされます。ただし、ユーザー コンテキストに大量の規則が存在する場合は移行に時間がかかる可能性があります。システム コンテキストを適用できる場合は、それを使ってください。

カスタマイズ バージョンの XML ファイルのサンプル移行規則

注意

USMT のカスタマイズされた XML ファイルに関するヒント集と要件については、「USMT XML ファイルのカスタマイズ」と「一般規則」をご覧ください。

対象から除外する規則の使用例

以下の例では、移行元コンピューターの "new folder" というディレクトリに "new text document" という .txt ファイルがあります。既定の MigDocs.xml の動作により、new text document.txt ファイルと、"new folder" ディレクトリに含まれるすべてのファイルが移行されます。関数によって生成される規則は次のとおりです。

規則 1

<pattern type="File">d:\new folder\[new text document.txt]</pattern>

規則 2

<pattern type="File">d:\new folder\*[*]</pattern>

new text document.txt ファイルと "new folder" 内のすべての .txt ファイルを除外する方法としては、以下の方法があります。

例 1: フォルダー内のすべての .txt ファイルを除外する

規則 1 を除外するには、ファイル名が正確に一致する必要があります。ただし、規則 2 で、ファイル名拡張子を使ってファイルを除外するパターンを作成できます。

<exclude>

     <objectSet>

        <pattern type="File">D:\Newfolder\[new text document.txt]</pattern>

         <pattern type="File">D:\New folder\*[*.txt]</pattern>

     </objectSet>

</exclude>

例 2: UnconditionalExclude 要素を使って、対象に含める規則よりも優先させる

ファイル名やファイルの場所はわからないが、ファイル名拡張子はわかるという場合は、GenerateDrivePatterns 関数を利用できます。ただし、この規則は MigDocs.xml ファイルによって生成される既定の対象に含める規則よりも具体性が低くなるため、優先されません。<UnconditionalExclude> 要素を使って、この規則を既定の対象に含める規則よりも優先させる必要があります。XML 移行規則の優先順位について詳しくは、「競合と優先度」をご覧ください。

<unconditionalExclude>

     <objectSet>

        <script>MigXmlHelper.GenerateDrivePatterns ("*[*.txt]", "Fixed")</script>

     </objectSet>

</unconditionalExclude>

例 3: UserandSystem コンテキスト コンポーネントを使って両方のコンテキストで規則を実行する

<UnconditionalExclude> 要素をシステム コンテキストとユーザー コンテキストの両方に適用する場合は、UserandSystem コンテキストを使って 3 つ目のコンポーネントを作成できます。このコンポーネントの規則は両方のコンテキストで実行されます。

<component type="Documents" context="UserandSystem">

   <displayName>MigDocExcludes</displayName>

   <role role="Data">

     <rules>

       <unconditionalExclude>

         <objectSet>

                <script>MigXmlHelper.GenerateDrivePatterns ("*[*.txt]", "Fixed")</script>

         </objectSet>

       </unconditionalExclude>

     </rules>

   </role>

</component>

カスタムの移行 XML ファイルで使える対象から除外する規則の例については、「ファイルと設定の除外」をご覧ください。

対象に含める規則の使用例

アプリケーション データ ディレクトリは、対象に含める規則を追加する必要のある最も一般的な場所です。GenerateDocPatterns 関数はこの場所を既定で除外します。重要なデータをこの場所に保存するアプリケーションを会社で使っている場合は、対象に含める規則を作成してそのデータを移行できます。たとえば、.pst ファイルの既定の場所は %CSIDL_LOCAL_APPDATA%\Microsoft\Outlook です。Migapp.xml ファイルには、Microsoft Outlook に関連付けられている .pst ファイルのみを移動する移行規則が含まれています。関連付けられていない .pst ファイルを対象に含める方法としては、以下の方法があります。

例 1: 既知のユーザー フォルダー内のファイル名拡張子を含める

この規則には、既定の場所にあるが、Microsoft Outlook には関連付けられていない .pst ファイルが含まれます。ユーザー コンテキストを使って、この規則をコンピューター上のユーザーごとに実行します。

<include filter='MigXmlHelper.IgnoreIrrelevantLinks()'>

     <objectSet>

        <pattern type="File">%CSIDL_LOCAL_APPDATA%\Microsoft\Outlook\*[*.pst]</pattern>

     </objectSet>

</include>

例 2: Program Files 内のファイル名拡張子を含める

Program Files フォルダーなど、ユーザー プロファイル以外の場所については、システム コンテキスト コンポーネントに規則を追加できます。

<include filter='MigXmlHelper.IgnoreIrrelevantLinks()'>

     <objectSet>

        <pattern type="File">%CSIDL_PROGRAM_FILES%\*[*.pst]</pattern>

     </objectSet>

</include>

カスタムの移行 XML ファイルで使える対象に含める規則の例については、「ファイルと設定を含める」をご覧ください。

注意

XML 移行規則の優先順位について詳しくは、「競合と優先度」をご覧ください。

次の手順

追加の移行規則を MigDocs.xml ファイルなどの XML 移行ファイルに含めることができます。たとえば、<locationModify> 要素を使うと、ファイルを移行先コンピューターに適用するときに、それらのファイルが収集されたフォルダーから別のフォルダーに移動できます。詳しくは、「USMT XML リファレンス」をご覧ください。

カスタマイズされた XML ファイルの構文の検証には、XML スキーマ (MigXML.xsd) ファイルを使うことができます。詳しくは、「USMT リソース」をご覧ください。

関連項目

他のリソース

ファイルと設定の除外
ファイルと設定を含める