自訂 USMT XML 檔案

在本主題中

概觀

移轉 .xml 檔案

自訂 .xml 檔案

Config.xml 檔案

範例

其他資訊

概觀

如果您要 ScanStateLoadState 工具使用任何移轉 .xml 檔案,請在命令列使用 /i 選項指定這些檔案。因為 ScanStateLoadState 工具需要 .xml 檔案才能控制移轉,請針對 ScanStateLoadState 命令指定相同的 .xml 檔案組。但是,您不需要使用 /config 選項指定 Config.xml 檔案,除非您要排除移轉至存放區的部分檔案和設定。例如,您可能想要將 [我的文件] 資料夾移轉至存放區,但是不想移轉到目的電腦。若要這樣做,請修改 Config.xml 檔案並使用 LoadState 命令指定更新的檔案。接著 LoadState 命令就會只移轉您要移轉的檔案和設定。

如果您的 LoadState 命令遺漏 .xml 檔案,存放區中與遺漏 .xml 檔案一起移轉的所有資料都會進行移轉。但是,不會套用以 ScanState 命令指定的移轉規則。例如,如果您遺漏 .xml 檔案,而該檔案包含下列重設路徑規則:MigsysHelperFunction.RelativeMove("c:\data", "%CSIDL_PERSONAL%"),則 USMT 不會重設檔案路徑,檔案會移轉到 C:\data。

若要修改移轉,請執行下列一個或多個動作。

  • **修改移轉 .xml 檔案。**如果您要排除部分元件 (例如,您要移轉 C:\,但是要排除所有 .mp3 檔案),或者要將資料移至目的電腦上的新位置,請修改 .xml 檔案。若要修改這些檔案,您必須熟悉移轉規則和語法。如果您想要 ScanStateLoadState 使用這些檔案,請在輸入每個命令時於命令列進行指定。

  • **建立自訂 .xml 檔案。**您也可以建立自訂 .xml 檔案以移轉其他應用程式的設定,或根據您的需求變更移轉行為。若要讓 ScanStateLoadState 使用此檔案,請在這兩個命令列加以指定。

  • **建立及修改 Config.xml 檔案。**如果您要從移轉排除整個元件,請執行此動作。例如,您可以使用 Config.xml 檔案排除整個 [我的文件] 資料夾,或是排除應用程式的設定。使用 Config.xml 檔案排除元件比修改移轉 .xml 檔案還簡單,因為您不需要熟悉移轉規則和語法。此外,使用 Config.xml 檔案是排除作業系統設定,使其不被移轉的唯一方法。

如需排除資料的相關資訊,請參閱排除檔案與設定主題。

移轉 .xml 檔案

本節說明 USMT 隨附的移轉 .xml 檔案。每個檔案都包含移轉規則,這些規則控制要移轉什麼元件,以及要移轉至目的電腦上的什麼位置。

note備註
您可以在這些檔案中使用星號 (*) 萬用字元。但是,您無法使用問號 (?) 做為萬用字元。

  • **MigApp.xml 檔案。**使用 ScanStateLoadState 命令指定此檔案,移轉應用程式設定。

  • **MigDocs.xml 檔案。**使用 ScanStateLoadState 工具指定此檔案,移轉 MigXmlHelper.GenerateDocPatterns Helper 函式找到的所有使用者資料夾和檔案。 此 Helper 函式會尋找位於任何磁碟機根目錄和 Users 目錄中的使用者資料。 但是,它不會尋找與移轉 Windows 目錄中的任何應用程式資料、程式檔案或任何檔案。您可以修改 MigDocs.xml 檔案。

  • **MigUser.xml 檔案。**使用 ScanStateLoadState 命令指定此檔案,移轉使用者資料夾、檔案和檔案類型。您可以修改 MigUser.xml 檔案。此檔案不包含會移轉特定使用者帳戶的規則。在命令列上指定要移轉之使用者帳戶的唯一方法,就是使用 ScanStateLoadState 使用者選項。

    note備註
    請勿同時使用 MigUser.xml 和 MigDocs.xml 檔案。如需詳細資訊,請參閱識別檔案類型、檔案及資料夾USMT 最佳做法主題。

自訂 .xml 檔案

您可以建立自訂 .xml 檔案以針對您獨特的需求自訂移轉。例如,您可能想要建立自訂檔案移轉特定業務應用程式,或修改預設的移轉行為。如果您想要讓 ScanStateLoadState 使用此檔案,請使用這兩個命令加以指定。如需詳細資訊,請參閱自訂 USMT XML 檔案主題。

Config.xml 檔案

Config.xml 檔案是選擇性檔案,您可以使用 ScanState 命令搭配 /genconfig 選項加以建立。如果您要從移轉排除特定元件,應建立及修改此檔案。此外,如果您要排除任何作業系統設定使其不被移轉,則必須建立及修改此檔案。Config.xml 檔案具有與移轉 .xml 檔案不同的格式,因為它不包含任何移轉規則。它只包含可以移轉之作業系統元件、應用程式及使用者文件的清單。如需相關範例,請參閱Config.xml 檔案主題。基於這個原因,使用此檔案排除元件比修改移轉 .xml 檔案還要簡單,因為您不需要熟悉移轉規則和語法。但是,您無法在 Config.xml 檔案中使用萬用字元。

如果您要納入所有預設元件,則不需要建立 Config.xml 檔案。或者,如果您對 MigApp.xml、MigDocs.xml 及 MigUser.xml 檔案中定義的預設移轉行為感到滿意,而且只想要排除某些元件,可以建立及修改 Config.xml 檔案,並且讓其他 .xml 檔案保持原始狀態。

執行 ScanState 命令時搭配 /genconfig 選項,ScanState 會讀取您使用 /i 選項指定的其他 .xml 檔案,以建立可以從電腦移轉的元件自訂清單。這個檔案只會包含同時出現在這兩個 .xml 檔案,而且在您搭配 /genconfig 選項執行 ScanState 命令時安裝到電腦上的作業系統元件、應用程式及使用者文件區段。因此,您應該在來源電腦上建立此檔案,並在檔案中包含將要在目的電腦放置的所有元件、應用程式及設定。這會確保此檔案包含每個可以移轉的元件。元件分成下列區段:<Applications>、<WindowsComponents> 和 <Documents>。如果您選擇不要移轉某個元件,請將其項目變更為 migrate="no"

建立此檔案之後,您只能使用 ScanState 命令搭配 /Config 選項指定此檔案,才能對移轉產生作用。但是,如果您要排除移轉至存放區的其他資料,請修改 Config.xml 檔案並以 LoadState 命令指定更新的檔案。例如,如果您在存放區收集 [我的文件] 資料夾,但是決定不要將 [我的文件] 資料夾移轉到目的電腦,則可以修改 Config.xml 檔案並指示 migrate="no",然後再執行 LoadState 命令,如此就不會移轉該檔案。如需排除資料時優先順序的相關資訊,請參閱排除檔案與設定主題。

此外,請注意下列 Config.xml 檔案的功能:

  • 如果是藉由指定 migrate="no" 而使 Config.xml 檔案中的父元件從移轉中移除,其所有子元件也會自動從移轉移除,即使子元件是設定為 migrate="yes" 也一樣。

  • 如果您不小心在相同的元件中輸入兩行代碼,其中一行指定 migrate="no" ,而另一行指定 migrate="yes",則會移轉該元件。

  • 在 USMT 中,您可以在 Config.xml 檔案中設定多個移轉原則。例如,您可以設定其他 <ErrorControl><ProfileControl><HardLinkStoreControl> 選項。如需詳細資訊,請參閱 Config.xml 檔案主題。

note備註
若要從 Config.xml 檔案排除某個元件,請將 migrate 值設定成 "no"。從 Config.xml 檔案中刪除元件的 XML 標記後,移轉時並不會排除該元件。

範例

  • 下列命令會在目前目錄中建立 Config.xml 檔案,但是不會建立存放區:

    scanstate /i:migapp.xml /i:migdocs.xml /genconfig:config.xml /v:5

  • 下列命令使用 Config.xml 檔案和預設移轉 .xml 檔案建立加密存放區:

    scanstate \\server\share\migration\mystore /i:migapp.xml /i:migdocs.xml /o /config:config.xml /v:5 /encrypt /key:"mykey"

  • 下列命令會解密存放區並且移轉檔案和設定:

    loadstate \\server\share\migration\mystore /i:migapp.xml /i:migdocs.xml /v:5 /decrypt /key:"mykey"

其他資訊

另請參閱

其他資源

使用者狀態遷移工具 (USMT) 命令列語法
USMT 資源