Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

USMT 4.0 exclude does not work :-(

278 views
Skip to first unread message

Jens From

unread,
Aug 26, 2009, 6:19:03 AM8/26/09
to
Hi group..
I have a problem that is driving me absolutely insane.
I´m using a customized XML file state migration from a commandline. The OS
is WinXP SP3, USMT 4.0 running as domain admin. I´m 100% that my commandline
is correct, and the XML file is interpreted.

It does the basic stuff, migrate the desktop, favorites, and some additional
filetypes and folders. And it SHOULD exclude .mp3 files or videos. And it
does not exclude anything :-(
It seems like it happens when I place a mp3 file on the desktop, or other
folder that I have chosen to migrate. When it is stored in the root of the
C-drive, it is not migrated. I have tried to use an Microsoft example
XML-file, that utilize the UnconditionalExclude , without any luck. As I read
the documentation, UnconditionalExclude overrules everything else, correct ??
Have anyybody seen that before ? Or maybe have a working XML-file wih
exclusions they can post ??

Any help or input will be great :-)

Jens From

unread,
Aug 26, 2009, 6:49:04 AM8/26/09
to
I Found the solution ten seconds after writing this post *typical*
It is so un-elegant that I´m tempted to call it a bug. Any opnions on that
statement is very welcome ...

Anyway, I discovered that no matter what I did, if a excluded filetype was
located in any of the folders I have the selected to migrate (
desktop,favorites and a custom folder in the root of C:\ ) they would be
migrated, even when the UnconditionalExclude was used in the XML-file.

The trick is, in every rule ,where I state a folder to migrate, I had to add
the UnconditionalExclude list, within the same component. Then it works, but
my XML-file ,is now veryy long and confusing to edit :-(

Below is a snippet of my xml-file, for your reference.

<component type="Documents" context="User">
<displayName _locID="miguser.desktop">Desktop</displayName>
<paths>
<path type="File">%CSIDL_DESKTOP%</path>
</paths>
<role role="Settings">
<detects>
<detect>

<condition>MigXmlHelper.DoesObjectExist("File","%CSIDL_DESKTOP%")</condition>
</detect>
</detects>
<rules>
<include filter='MigXmlHelper.IgnoreIrrelevantLinks()'>
<objectSet>
<pattern type="File">%CSIDL_DESKTOP%\* [*]</pattern>
</objectSet>
</include>
<!-- FIx for exclude added below -->
<unconditionalExclude>
<objectSet>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.mp3]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.mp4]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.mpeg]",
"Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.avi]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.wmv]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.wma]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.vob]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.mkv]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.vhd]", "Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.vmc]", "Fixed")</script>
<pattern type="File">%CSIDL_PERSONAL%\PRIVATE\* [*]</pattern>


</objectSet>
</unconditionalExclude>



<merge script="MigXmlHelper.DestinationPriority()">
<objectSet>
<pattern type="File">%CSIDL_DESKTOP%
[desktop.ini]</pattern>
<pattern type="File">%CSIDL_DESKTOP%\* [*]</pattern>
</objectSet>
</merge>
</rules>
</role>
</component>

JR--

unread,
Aug 26, 2009, 2:01:03 PM8/26/09
to
Hey Jens -

That should not be the case - and i have not had that issue?

One thing you can try to help figure out what rules are getting processed is
to create the diagnostic log - this file contains a dump of all the migration
rules created - here you can see what is getting matched in the patterns -

SET MIG_ENABLE_DIAG=<filename>

If you are interested in looking deeper into this please post your previous
set of exclude rules - that did not work -

Chris Troll

unread,
Aug 27, 2009, 3:50:02 AM8/27/09
to
Hi Jens,
this works perfect for me.

<component type="Documents" context="System">
<displayName>Data directory</displayName>
<role role="Data">
<rules context="System">
<!-- GENERAL Exclude section -->


<unconditionalExclude>
<objectSet>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.mp3]",
"Fixed")</script>

<script>MigXmlHelper.GenerateDrivePatterns ("* [*.wav]",
"Fixed")</script>
<script>MigXmlHelper.GenerateDrivePatterns ("* [*.ost]",
"Fixed")</script>
</objectSet>
<objectSet>
<pattern type="File">C:\Program Files\* [*]</pattern>
<pattern type="File">C:\Windows\* [*]</pattern>
</objectSet>
</unconditionalExclude>

Cheers
Chris

JR--

unread,
Sep 1, 2009, 9:29:01 PM9/1/09
to
Oh - be sure to check the context - if you unconditional exclude is running
under system context it will not exclude data gathered under user context -
the reverse holds true as well - so if you need it to apply to both all user
context and all system context - use UserandSystem context - that could have
been the issue you ran into and would also explain why it worked when you
added the rule to the same component -


<!-- This component migrates data in user context -->
<component type="Documents1" context="UserandSystem">
<displayName>MigDocUser1</displayName>
<role role="Data">
<rules>

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

</objectSet>
</unconditionalExclude>

</rules>
</role>
</component>

Simon

unread,
Sep 29, 2009, 8:56:01 PM9/29/09
to
Try performing a /genconfig:%SystemRoot%\Temp\Config.XML with no templates
then change all the migrate="yes" to migrate="no" then perform a
scanstate.exe %somestore% /i:%sometemplate% /c /localonly
/config:%SystemRoot%\Temp\Config.XML which will then exclude the system files
collected by the manifests. This is not a bug but a feature as the utility
is capturing what Microsoft consider required for a system migration which
includes some media files, ras settings, fonts etc which are located under
the C:\Program Files and C:\Winnt directories. You can also test out this
utility at http://simonjarvis.customer.netspace.net.au which will help you
with configuring the templates and running the scripts.
0 new messages