<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Guillaume Bordier&amp;#39;s blog</title><subtitle type="html" /><id>http://blogs.technet.com/b/gbordier/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/" /><link rel="self" type="application/atom+xml" href="http://blogs.technet.com/b/gbordier/atom.aspx" /><generator uri="http://telligent.com" version="5.6.50428.7875">Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><updated>2008-03-26T21:03:00Z</updated><entry><title>How to learn more about Windows than any classic training</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2010/02/18/how-to-learn-more-about-windows-than-any-classic-training.aspx" /><id>http://blogs.technet.com/b/gbordier/archive/2010/02/18/how-to-learn-more-about-windows-than-any-classic-training.aspx</id><published>2010-02-18T10:42:00Z</published><updated>2010-02-18T10:42:00Z</updated><content type="html">&lt;P&gt;Today I had some spare time, and totally randomly stumbled across those two blogs&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&amp;nbsp;The windows debugging team blog : &lt;A href="http://blogs.msdn.com/ntdebugging/default.aspx"&gt;http://blogs.msdn.com/ntdebugging/default.aspx&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;The WMI &lt;A href="http://blogs.msdn.com/wmi/default.aspx"&gt;http://blogs.msdn.com/wmi/default.aspx&lt;/A&gt;&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;If you ever wondered if there was a WMIMON (like PROCMON) you may find this : &lt;A href="http://blogs.msdn.com/wmi/archive/2009/05/27/is-wmiprvse-a-real-villain.aspx"&gt;http://blogs.msdn.com/wmi/archive/2009/05/27/is-wmiprvse-a-real-villain.aspx&lt;/A&gt;&amp;nbsp;interresting.&lt;/P&gt;
&lt;P&gt;Guillaume&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3313699" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>Create a CAB file for Windows Mobile from a certificate chain with Powershell</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2009/11/24/create-a-cab-file-with-a-certificate-chain.aspx" /><link rel="enclosure" type="application/octet-stream" length="1468" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-29-59-21/makecab.ps1" /><id>http://blogs.technet.com/b/gbordier/archive/2009/11/24/create-a-cab-file-with-a-certificate-chain.aspx</id><published>2009-11-23T23:49:00Z</published><updated>2009-11-23T23:49:00Z</updated><content type="html">&lt;P&gt;At &lt;A href="http://blogs.msdn.com/windowsmobile/archive/2006/03/11/powershell-cert-xml.aspx" mce_href="http://blogs.msdn.com/windowsmobile/archive/2006/03/11/powershell-cert-xml.aspx"&gt;his blog&lt;/A&gt;&amp;nbsp;Scott Yost treated us with a very cool powershell script to create xml files reqiured to build a .cab and install root certificates on windows mobile.&lt;/P&gt;
&lt;P&gt;Since a customer just asked me for it, I thought I'll finish his script to allow several certificates to be inserted and actually create the .cab file (if you have cabarc.exe somewhere on your path)&lt;/P&gt;
&lt;P&gt;use :&lt;BR&gt;makecab.ps1 &amp;lt;file&amp;gt; &lt;BR&gt;or &lt;BR&gt;makecab.ps1 &amp;lt;folder&amp;gt;&lt;/P&gt;
&lt;P&gt;To create a cab file with the same name.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Enjoy&lt;/P&gt;
&lt;P mce_keep="true"&gt;Guillaume&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3295921" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author><category term="CAB certificatestore _setup.xml  root certificate windows mobile" scheme="http://blogs.technet.com/b/gbordier/archive/tags/CAB+certificatestore+_5F00_setup-xml++root+certificate+windows+mobile/" /></entry><entry><title>Powershell and writing files (how fast can you write to a file? )</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2009/05/05/powershell-and-writing-files-how-fast-can-you-write-to-a-file.aspx" /><id>http://blogs.technet.com/b/gbordier/archive/2009/05/05/powershell-and-writing-files-how-fast-can-you-write-to-a-file.aspx</id><published>2009-05-05T17:11:39Z</published><updated>2009-05-05T17:11:39Z</updated><content type="html">&lt;p class="Body"&gt;&lt;span lang="EN"&gt;Hi there, &lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;I’ve been working for some time on a tool similar to &lt;a href="http://www.codeplex.com/PAL"&gt;&lt;span style="color: blue"&gt;PAL&lt;/span&gt;&lt;/a&gt; from mike lagase in order to automate the analysis of loadgen runs.&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;While doing this I had to write large files with PowerShell and was not impressed with the result.&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;I thought I’d share the problem and solution with the community.&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body" style="margin-bottom: 0pt"&gt;&lt;span lang="EN"&gt;There are at least four ways of writing files with PSH:&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing" style="margin-left: 1in; text-indent: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;span style="font-family: symbol; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;use the ‘&amp;gt;&amp;gt;’' alias that calls into the out-file cmd-let&lt;/p&gt;  &lt;p class="MsoNoSpacing" style="margin-left: 1in; text-indent: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;span style="font-family: symbol; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;use export-csv&lt;/p&gt;  &lt;p class="MsoNoSpacing" style="margin-left: 1in; text-indent: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;span style="font-family: symbol; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;use .Net&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;So let’s say I want to write 10000 lines into a file.&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN"&gt;&lt;font size="4"&gt;Method 1: use the &amp;gt;&amp;gt; operator&lt;/font&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;div style="border-right: windowtext 1pt solid; padding-right: 0in; border-top: windowtext 1pt solid; padding-left: 4pt; background: #d9d9d9; padding-bottom: 1pt; margin-left: 1in; border-left: windowtext 1pt solid; margin-right: 1in; padding-top: 1pt; border-bottom: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;   &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span lang="EN"&gt;$s=”some text”          &lt;p&gt;&lt;/p&gt;       &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span lang="EN"&gt;1..10000 | % {         &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; $s &amp;gt;&amp;gt; &amp;quot;.\test.txt&amp;quot;          &lt;br /&gt;}           &lt;p&gt;&lt;/p&gt;       &lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;     &lt;p&gt;&amp;#160;&lt;/p&gt;   &lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;This way you actually open and close the file 1000 times.&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN"&gt;Method 2: use out-file to write an Array &lt;/span&gt;&lt;/h3&gt;  &lt;div style="border-right: windowtext 1pt solid; padding-right: 0in; border-top: windowtext 1pt solid; padding-left: 4pt; background: #d9d9d9; padding-bottom: 1pt; margin-left: 1in; border-left: windowtext 1pt solid; margin-right: 1in; padding-top: 1pt; border-bottom: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;   &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;1..10000 | % {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; $a+=[Array] $s        &lt;br /&gt;} &lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;$a | out-file &amp;quot;.\test.txt&amp;quot;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;This way actually writes once, using powershell.&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN"&gt;Method 3: use export-csv to write an Array &lt;/span&gt;&lt;/h3&gt;  &lt;div style="border-right: windowtext 1pt solid; padding-right: 0in; border-top: windowtext 1pt solid; padding-left: 4pt; background: #d9d9d9; padding-bottom: 1pt; margin-left: 1in; border-left: windowtext 1pt solid; margin-right: 1in; padding-top: 1pt; border-bottom: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;   &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;$a=@()&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;1..10000 | % {&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;&lt;span style="mso-tab-count: 1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;$a+=[Array] $s&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;}&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;$a | export-csv &amp;quot;t.txt&amp;quot;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;Export-csv can also write the array for you&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;     &lt;p&gt;&amp;#160;&lt;/p&gt;   &lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span lang="EN"&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;h3&gt;&lt;span lang="EN"&gt;Method 4: use .Net StreamWriter to write the file&lt;/span&gt;&lt;/h3&gt; &lt;span lang="EN"&gt;   &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;/span&gt;  &lt;div style="border-right: windowtext 1pt solid; padding-right: 0in; border-top: windowtext 1pt solid; padding-left: 4pt; background: #d9d9d9; padding-bottom: 1pt; margin-left: 1in; border-left: windowtext 1pt solid; margin-right: 1in; padding-top: 1pt; border-bottom: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;   &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;$stream = [System.IO.StreamWriter] &amp;quot;t.txt&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;1..10000 | % {&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;&lt;span style="mso-tab-count: 1"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;$stream.WriteLine($s)&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;}&lt;/span&gt;&lt;/p&gt;    &lt;p class="Source" style="background: #d9d9d9; margin: 0in 0in 0pt; mso-background-themecolor: background1; mso-background-themeshade: 217"&gt;&lt;span lang="EN"&gt;$stream.close()&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;The StreamWriter object from .Net also does the work nicely.&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN"&gt;Conclusion: how fast ?&lt;/span&gt;&lt;/h3&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;I tried all methods on my laptop, and here is what I got:&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoTableLightShadingAccent1" style="border-right: medium none; border-top: medium none; margin-left: 45.9pt; border-left: medium none; border-bottom: medium none; border-collapse: collapse; mso-border-top-alt: solid #4f81bd 1.0pt; mso-border-top-themecolor: accent1; mso-border-bottom-alt: solid #4f81bd 1.0pt; mso-border-bottom-themecolor: accent1; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt" cellspacing="0" cellpadding="0" border="1"&gt;&lt;tbody&gt;     &lt;tr style="mso-yfti-irow: -1; mso-yfti-firstrow: yes"&gt;       &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: #4f81bd 1pt solid; padding-left: 5.4pt; padding-bottom: 0in; border-left: medium none; width: 193.5pt; padding-top: 0in; border-bottom: #4f81bd 1pt solid; mso-border-top-themecolor: accent1; mso-border-bottom-themecolor: accent1" valign="top" width="258"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 5"&gt;&lt;b&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&lt;/span&gt;Method                &lt;p&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: #4f81bd 1pt solid; padding-left: 5.4pt; padding-bottom: 0in; border-left: medium none; width: 135pt; padding-top: 0in; border-bottom: #4f81bd 1pt solid; mso-border-top-themecolor: accent1; mso-border-bottom-themecolor: accent1" valign="top" width="180"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 1"&gt;&lt;b&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Time to completion               &lt;p&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="mso-yfti-irow: 0"&gt;       &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0in; border-left: medium none; width: 193.5pt; padding-top: 0in; border-bottom: medium none; mso-background-themecolor: accent1; mso-background-themetint: 63" valign="top" width="258"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 68"&gt;&lt;b&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;‘&amp;gt;&amp;gt;’               &lt;p&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0in; border-left: medium none; width: 135pt; padding-top: 0in; border-bottom: medium none; mso-background-themecolor: accent1; mso-background-themetint: 63" valign="top" width="180"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 64"&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;29 s             &lt;p&gt;&lt;/p&gt;           &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="mso-yfti-irow: 1"&gt;       &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0in; border-left: medium none; width: 193.5pt; padding-top: 0in; border-bottom: medium none" valign="top" width="258"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 4"&gt;&lt;b&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Outfile and [Array]               &lt;p&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0in; border-left: medium none; width: 135pt; padding-top: 0in; border-bottom: medium none" valign="top" width="180"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal"&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;27 s             &lt;p&gt;&lt;/p&gt;           &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="mso-yfti-irow: 2"&gt;       &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0in; border-left: medium none; width: 193.5pt; padding-top: 0in; border-bottom: medium none; mso-background-themecolor: accent1; mso-background-themetint: 63" valign="top" width="258"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 68"&gt;&lt;b&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;export-csv               &lt;p&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0in; border-left: medium none; width: 135pt; padding-top: 0in; border-bottom: medium none; mso-background-themecolor: accent1; mso-background-themetint: 63" valign="top" width="180"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 64"&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;22 s             &lt;p&gt;&lt;/p&gt;           &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr style="mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;       &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0in; border-left: medium none; width: 193.5pt; padding-top: 0in; border-bottom: #4f81bd 1pt solid; mso-border-bottom-themecolor: accent1" valign="top" width="258"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal; mso-yfti-cnfc: 4"&gt;&lt;b&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;StreamWriter               &lt;p&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0in; border-left: medium none; width: 135pt; padding-top: 0in; border-bottom: #4f81bd 1pt solid; mso-border-bottom-themecolor: accent1" valign="top" width="180"&gt;         &lt;p class="Body" style="margin-bottom: 0pt; line-height: normal"&gt;&lt;span lang="EN" style="color: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;1.5 s             &lt;p&gt;&lt;/p&gt;           &lt;/span&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;     &lt;p&gt;&amp;#160;&lt;/p&gt;   &lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;Well results speak by themselves, if you are in a hurry, use .Net StreamWriter !&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;Cheers, &lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;Next, check that with Powerhell v2!&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;Guillaume&lt;/span&gt;&lt;/p&gt;  &lt;p class="Body"&gt;&lt;span lang="EN"&gt;     &lt;p&gt;&amp;#160;&lt;/p&gt;   &lt;/span&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3235713" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>PublisherEvidence strikes again : create .config files everywhere !</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2009/03/30/publisherevidence-strikes-again-create-config-files-everywhere.aspx" /><id>http://blogs.technet.com/b/gbordier/archive/2009/03/30/publisherevidence-strikes-again-create-config-files-everywhere.aspx</id><published>2009-03-30T18:08:00Z</published><updated>2009-03-30T18:08:00Z</updated><content type="html">&lt;P&gt;My &lt;A class="" href="http://blogs.technet.com/gbordier/archive/2008/07/11/exchange-server-2007-rollups-nighmares.aspx" mce_href="http://blogs.technet.com/gbordier/archive/2008/07/11/exchange-server-2007-rollups-nighmares.aspx"&gt;previous post&lt;/A&gt; about Exchange 2007 SP1 RU5 at () explained why Exchange Services where so slow to start after RU5 was applied : .Net code checks for the Microsoft Certificate Revocation List at each startup. &lt;/P&gt;
&lt;P&gt;As explained in &lt;A href="http://support.microsoft.com/?kbid=944752"&gt;http://support.microsoft.com/?kbid=944752&lt;/A&gt;, a .config file with &lt;/P&gt;
&lt;P&gt;&amp;lt;configuration&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;lt;runtime&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;generatePublisherEvidence enabled="false" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;lt;/runtime&amp;gt; &lt;BR&gt;&amp;lt;/configuration&amp;gt;&lt;/P&gt;
&lt;P&gt;saves the day.&lt;/P&gt;
&lt;P&gt;Now you can also need this magically .config file for virtually any .NET based code that run in a non-internet connected environment, &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;My powershell startup, create a &lt;STRONG&gt;powershell.exe.config&lt;/STRONG&gt; file&lt;/LI&gt;
&lt;LI&gt;Exchange System Manager takes 45 seconds to start ?, create an &lt;STRONG&gt;mmc.exe.config&lt;/STRONG&gt; file !&lt;/LI&gt;
&lt;LI&gt;Outlook is slowww since we installed that latest plugin ? create an &lt;STRONG&gt;outlook.exe.config &lt;/STRONG&gt;file !&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Those files have to be created in the same directory the .exe&amp;nbsp;is and that's it.&lt;/P&gt;
&lt;P&gt;So you get the picture, create .config files when .NET application OR good old native win32 app that call into .Net dlls are slow to start.&lt;/P&gt;
&lt;P&gt;Guillaume&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3219821" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>Where did my disk space go ? [very long directory names, system directories, symbolink and other hard links ...], meet xdir.exe</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2009/02/03/where-did-my-disk-space-go-very-long-directory-names-system-directories-symbolink-and-other-hard-links-meet-xdir-exe.aspx" /><link rel="enclosure" type="application/octet-stream" length="120832" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-19-65-63/xdir.exe" /><id>http://blogs.technet.com/b/gbordier/archive/2009/02/03/where-did-my-disk-space-go-very-long-directory-names-system-directories-symbolink-and-other-hard-links-meet-xdir-exe.aspx</id><published>2009-02-03T23:00:00Z</published><updated>2009-02-03T23:00:00Z</updated><content type="html">&lt;UL&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;[EDIT : posted a statically linked version to remove dependency over VCRT 9.0]&lt;/STRONG&gt;&lt;/P&gt;&lt;/STRONG&gt;
&lt;P mce_keep="true"&gt;Hi geeks, &lt;/P&gt;&lt;/UL&gt;
&lt;P&gt;The first thing I do when I receive a new Microsoft-issued laptop is : buy the largest hard disk I can find to replace the one that shipped with it.&lt;/P&gt;
&lt;P&gt;But time goes ... and soon I wonder where all that disk space went.&lt;/P&gt;
&lt;P&gt;The other day one of my customers called me with that stance : "Guillaume, I've got a LUN on my SAN with 350GB I cannot account for".&lt;/P&gt;
&lt;P&gt;Where can there be content that is hidden from the system administrator himself ? &lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;System Volume Information&lt;/STRONG&gt; is a folder with SYSTEM only&amp;nbsp; permissions (so administrators do not have access) that can contains many things from Single Instance storage data, recovery points, snapshots ... &lt;/LI&gt;
&lt;LI&gt;very long (&amp;gt; 256 chars) directories are not displayed by either explorer&amp;nbsp; or the command line because one needs to use the Unicode syntax when accessing those and for some reason our developpers did not. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;To make the story short my customer had VSS shadow storage defined on that LUN for snapshot of a different LUN, so using vssadmin delete shadows or vssadmin delete shadowstorage got his content back.&lt;/P&gt;
&lt;P&gt;But this incident convinced me to launch my could old C++ compiler to build a tool that deals with those kind of nightmares: meet XDIR.EXE&lt;/P&gt;
&lt;P&gt;XDIR is a combination of DIRUSE.EXE (the close parent of DU from Windows 2000 resource kit), RD (remove directory from the nt shell), and dir.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;BUT &lt;/STRONG&gt;XDIR.EXE handles directories of any length, or permissions , it does try to follow symbolink links and you can use it to:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;reclaim disk space : calculate the size of that particular directory and any subdirectory : &lt;BR&gt;try &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;XDIR c:\&lt;/FONT&gt;&lt;/STRONG&gt; &lt;/LI&gt;
&lt;LI&gt;read a very long (or any) directory : &lt;BR&gt;try &lt;FONT color=#ff0000&gt;&lt;STRONG&gt;XDIR &amp;lt;your long directory&amp;gt; /DIR&lt;/STRONG&gt;&lt;/FONT&gt; &lt;/LI&gt;
&lt;LI&gt;delete a very long directory : &lt;BR&gt;try &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;XDIR &amp;lt;your long directory&amp;gt; /RMDIR&lt;/FONT&gt;&lt;/STRONG&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Options are :&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=593 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=158&gt;/MIN:xxx[GB|MB|KB|B]&lt;/TD&gt;
&lt;TD class="" vAlign=top width=433&gt;Minimum size to report (default is 500 MB)&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=158&gt;/LEV:nn&lt;/TD&gt;
&lt;TD class="" vAlign=top width=433&gt;Number of directory levels to display, default is 2, 0 will display all directories&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=158&gt;/FORCE&lt;/TD&gt;
&lt;TD class="" vAlign=top width=433&gt;known to the user of &lt;A href="http://www.gbordier.com/gbtools/fileacl.asp" mce_href="http://www.gbordier.com/gbtools/fileacl.asp"&gt;FILEACL&lt;/A&gt;, this will let you use your&amp;nbsp; SeBackupPrivilege and&amp;nbsp; SeRestorePrivilege to bypass the NTDS permissions (you need to be backup operator obviously)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;There are also a few other options that let you create an ANSI or UNICODE output file that came directly from FILEACL.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Let’s try this: where is there content that weight more than 500MB on my C drive ?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_2.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_2.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=217 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb.png" width=644 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;What are those 2 GB in my System Volume Information ? &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_4.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_4.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=90 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_1.png" width=644 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_1.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Well, that seems like a bunch of restore points to me. Wait, I’m running Windows Server 2008 and restore points are not a server feature ! Where are those kids from ? ohh, maybe from my old Windows XP dual boot ! &lt;/P&gt;
&lt;P&gt;Let’s see&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_6.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_6.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=165 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_2.png" width=644 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_2.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Files from last november? sounds like it’s the last time I booted my XP boot to flash my Windows Mobile, ok, let’s get rid of those (I’ll use the supported method of rebooting to XP and ask nicely that it delete those useless recovery points)&lt;/P&gt;
&lt;P&gt;let’s use another example:&lt;/P&gt;
&lt;P&gt;See that dir ? &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_8.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_8.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; FLOAT: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; MARGIN-RIGHT: auto; BORDER-RIGHT-WIDTH: 0px" height=210 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_3.png" width=401 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_3.png"&gt;&lt;/A&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_10.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_10.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; FLOAT: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; MARGIN-RIGHT: auto; BORDER-RIGHT-WIDTH: 0px" height=285 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_4.png" width=404 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_4.png"&gt;&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Empty folder, big deal ? &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_12.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_12.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=47 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_5.png" width=644 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_5.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;why the heck, does xdir.exe think there is 1.167 GB in that dir ? &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_14.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_14.png"&gt;&lt;IMG title=image style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=127 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_6.png" width=644 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_6.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Well somebody twisted (me) has put 1 Gig into this stupidly long directory.&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=662 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=660&gt;
&lt;P&gt;&lt;FONT face="Courier New" color=#800000 size=2&gt;&lt;EM&gt;Side Note : it is just impossible to go there with explorer so what can I do ? :&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV align=left&gt;&lt;FONT face="Courier New" color=#800000 size=2&gt;&lt;EM&gt;Create a JUNCTION point &lt;BR&gt;mklink&amp;nbsp; /J e:\temp\mount "e:\temp\01234567890123456789012345678901234567890123456789\01234567890123456789012345678901234567890123456789\01234567890123456789……&lt;/EM&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face="Courier New" color=#800000 size=2&gt;&lt;EM&gt;Create a DIRECTORY SYMBOLIC LINK &lt;BR&gt;mklink&amp;nbsp; /D e:\temp\mount "e:\temp\01234567890123456789012345678901234567890123456789\01234567890123456789012345678901234567890123456789\01234567890123456789…… &lt;/EM&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face="Courier New" color=#800000 size=2&gt;&lt;EM&gt;use the good old SUBST from DOS :) &lt;/EM&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;if you just want to get rid of it use :&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;XDIR &amp;lt;your long directory&amp;gt; /RMDIR&lt;/FONT&gt;&lt;/STRONG&gt; &lt;/P&gt;
&lt;P&gt;like this:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_16.png" mce_href="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_16.png"&gt;&lt;IMG title=image style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=47 alt=image src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_7.png" width=687 border=0 mce_src="http://blogs.technet.com/blogfiles/gbordier/WindowsLiveWriter/Wheredidmydiskspacegoverylongdirecto.exe_870C/image_thumb_7.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;add the /FORCE option if you do not have the rights on all folders (like with System Volume Information)&lt;/P&gt;
&lt;P&gt;Guillaume&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3196563" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author><category term="XDIR long directories folder size" scheme="http://blogs.technet.com/b/gbordier/archive/tags/XDIR+long+directories+folder+size/" /></entry><entry><title>Exchange 2007 RU4 quick update</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2008/11/03/exchange-2007-ru4-quick-update.aspx" /><id>http://blogs.technet.com/b/gbordier/archive/2008/11/03/exchange-2007-ru4-quick-update.aspx</id><published>2008-11-03T14:44:06Z</published><updated>2008-11-03T14:44:06Z</updated><content type="html">&lt;p&gt;Quick update from my previous &lt;a href="http://blogs.technet.com/gbordier/archive/2008/07/11/exchange-server-2007-rollups-nighmares.aspx"&gt;post&lt;/a&gt; about rollups.&lt;/p&gt;  &lt;p&gt;RU4 still has the same CRL check behavior and the script I published has been rolled out nicely at several customers.&lt;/p&gt;  &lt;p&gt;So even though it is obviously not supported&amp;#160; by Microsoft in any way, you may want to try it knowing other did it without issues.&lt;/p&gt;  &lt;p&gt;Guillaume&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3146362" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>Quickie : Gil Kirkpatrick posted the Windows 2008 Bluetooth guide</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2008/07/14/quickie-gil-kirkpatrick-posted-the-windows-2008-bluetooth-guide.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="461" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-08-87-01/lazy.zip" /><id>http://blogs.technet.com/b/gbordier/archive/2008/07/14/quickie-gil-kirkpatrick-posted-the-windows-2008-bluetooth-guide.aspx</id><published>2008-07-14T18:47:00Z</published><updated>2008-07-14T18:47:00Z</updated><content type="html">&lt;P&gt;Hi there, &lt;/P&gt;
&lt;P&gt;Gil came up with&amp;nbsp;a very clean way to &lt;A class="" href="http://www.gilkirkpatrick.com/Blog/post/Installing-the-Microsoft-Bluetooth-Stack-on-Windows-Server-2008.aspx" target=_blank mce_href="http://www.gilkirkpatrick.com/Blog/post/Installing-the-Microsoft-Bluetooth-Stack-on-Windows-Server-2008.aspx"&gt;activate bluetooth on Windows Server 2008 x64&lt;/A&gt;. For all those like me who need Hyper-V AND bluetooth on their laptop, this is an excellent news.&lt;/P&gt;
&lt;P&gt;The two attached file may help you collect the files if you are as lazy as I am and don't want to copy them one by one.&lt;/P&gt;
&lt;P&gt;filelist.txt is the list of required file&lt;/P&gt;
&lt;P&gt;getfiles.cmd find where they are and copy to the local directory, then follow Gil guide (it took me 30 sec to make the modification with UltraEdit)&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3088701" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>Exchange Server 2007 rollups nightmares - automate the .config file modification</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2008/07/11/exchange-server-2007-rollups-nighmares.aspx" /><link rel="enclosure" type="application/octet-stream" length="6960" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-08-72-95/changeExchangeConfigFiles.PS1" /><id>http://blogs.technet.com/b/gbordier/archive/2008/07/11/exchange-server-2007-rollups-nighmares.aspx</id><published>2008-07-11T12:57:00Z</published><updated>2008-07-11T12:57:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;Most of you Microsoft Exchange Server 2007 admins or Loadgen users as have been confronted with the problem described &lt;A class="" href="http://support.microsoft.com/?kbid=944752" target=_blank mce_href="http://support.microsoft.com/?kbid=944752"&gt;here&lt;/A&gt;&amp;nbsp;:&amp;nbsp;(Exchange 2007 managed code services do not start after you install an update rollup for Exchange 2007).&lt;/P&gt;
&lt;P mce_keep="true"&gt;Those who read the above technote probably felt as I did that every solution given where stupid. You know what? They are ! Who wants to configure Internet access on an Exchange server?&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;A very good description and the 'right" solution is given by Nino and the team on the EHLO blog : &lt;A href="http://msexchangeteam.com/archive/2008/07/08/449159.aspx"&gt;http://msexchangeteam.com/archive/2008/07/08/449159.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;I've taken the liberty to automate the .config&amp;nbsp;file modification for you,&amp;nbsp;just&amp;nbsp;run the script on your server and this will do the&amp;nbsp;job: &amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;ChangeExchangeConfigFile.PS1 will create, modify any .config file for : &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;Exchange services only (checking them against the service database)&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;Any exchange .exe file in the Exchange installation folder &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;or any path you will want to give &lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;Click &lt;A class="" href="http://blogs.technet.com/gbordier/attachment/3087295.ashx" mce_href="http://blogs.technet.com/gbordier/attachment/3087295.ashx"&gt;here&lt;/A&gt; for the script itself.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Edit : small bug correction on the script.&lt;BR&gt;Edit2: (version 1.2) let's home is is the last bug !&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3087295" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author><category term="&amp;quot;Exchange 2007&amp;quot;" scheme="http://blogs.technet.com/b/gbordier/archive/tags/_2600_quot_3B00_Exchange+2007_2600_quot_3B00_/" /><category term="PowerShell" scheme="http://blogs.technet.com/b/gbordier/archive/tags/PowerShell/" /></entry><entry><title>How to use a smartcard within a Virtual Machine</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2008/06/30/how-to-use-a-smartcard-within-a-virtual-machine.aspx" /><id>http://blogs.technet.com/b/gbordier/archive/2008/06/30/how-to-use-a-smartcard-within-a-virtual-machine.aspx</id><published>2008-06-30T22:32:00Z</published><updated>2008-06-30T22:32:00Z</updated><content type="html">&lt;P&gt;As you may know If you see Microsoft field people from time to time,&amp;nbsp;we cannot stay unconnected from the Microsoft internal network (also known as CorpNet, &amp;nbsp;so Big Brother of us huh?) for long. Our VPN is protected with a SmartCard using only Microsoft technology of course. So my next step is to make my Virtual Machine "see" my smartcard reader.&lt;/P&gt;
&lt;P&gt;Neither Virtual PC, Virtual Server nor Hyper-V know how to redirect a USB port, si two solutions remain:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;use the old, dusty serial smartcard my buddy Jean-Yves "mustache" Grasset once gave me and which I had to fight my wife for during the last "clean the house" event,&lt;/LI&gt;
&lt;LI&gt;or remember that ... well ... Terminal Service does redirect the SmartCard itself to the TS !&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Since my "CorpNet VM" know has access to the Internet wherever I go I can enable "remote desktop" and TS in, use my smartcard and Voilà!&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3081069" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author><category term="networking" scheme="http://blogs.technet.com/b/gbordier/archive/tags/networking/" /></entry><entry><title>Hyper-V and Windows 2008 on my laptop - how to deal with wireless networking</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/gbordier/archive/2008/03/26/hyper-v-and-windows-2008-on-my-laptop-how-to-deal-with-networking.aspx" /><link rel="enclosure" type="image/jpeg" length="12565" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-01-90-38/bridge.jpg" /><id>http://blogs.technet.com/b/gbordier/archive/2008/03/26/hyper-v-and-windows-2008-on-my-laptop-how-to-deal-with-networking.aspx</id><published>2008-03-26T22:03:00Z</published><updated>2008-03-26T22:03:00Z</updated><content type="html">&lt;P&gt;I received a few weeks ago my latest Microsoft laptop and as usual came the question of which OS to install it with.&lt;/P&gt;
&lt;P&gt;This time my focus was : go 64 bits and use our latest Windows Server OS, Windows Server 2008 which remarkably was getting out of the doors at that time.&lt;/P&gt;
&lt;P&gt;At the same time I had to prepare for my presentations at Techdays France 2008 which I decided to run on Hyper-V. The goal here was to have full portability between my home lab (also on W2K8x64 + HyperV) and my laptop, so if something went wrong with my laptop, I could hopefully connect to my home lab and go on with the demo.&lt;/P&gt;
&lt;P&gt;Hyper-V is great, the networking capabilities are getting better and better ... but as a Server Product it was not designed to use my WIFI network adapter, it is not possible to bridge a virtual network to a wireles network adapter. You can use Ben's solution (&lt;A href="http://blogs.msdn.com/virtual_pc_guy/archive/2008/01/09/using-hyper-v-with-a-wireless-network-adapter.aspx" mce_href="http://blogs.msdn.com/virtual_pc_guy/archive/2008/01/09/using-hyper-v-with-a-wireless-network-adapter.aspx"&gt;http://blogs.msdn.com/virtual_pc_guy/archive/2008/01/09/using-hyper-v-with-a-wireless-network-adapter.aspx&lt;/A&gt;),&amp;nbsp; but I do prefer my way, (otherwise I would not be posting)&amp;nbsp;because it lets you keep control of your adressing.&lt;/P&gt;
&lt;P&gt;The goal is to create a Windows network bridge and include the virtual network in it.&lt;/P&gt;
&lt;P&gt;Here are my steps: &lt;BR&gt;1) Within Hyper-V Virtual Network Manager, create an "Internal Only" network, call it VMNET - it will also create a network adapter within Windows which device name will be the name of the Virtual network.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/photos/gbordier/picture3022583.aspx" target=_blank&gt;&lt;IMG src="http://blogs.technet.com/photos/gbordier/images/3022583/500x197.aspx" border=0&gt;&lt;/A&gt;&lt;BR&gt;2) go control panel-&amp;gt;network connections Clic your wireless adapter, Ctrl-clic the VMNET bound adapter and then right-clic and choose "bridge"&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;A href="http://blogs.technet.com/photos/gbordier/picture3022584.aspx" target=_blank&gt;&lt;IMG src="http://blogs.technet.com/photos/gbordier/images/3022584/original.aspx" border=0&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;This way every virtual machines will be bridged to the wireless network and no NAT is involved, pretty handy for the next post ...&lt;/P&gt;
&lt;P&gt;Guillaume&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3019038" width="1" height="1"&gt;</content><author><name>Guillaume Bordier</name><uri>http://blogs.technet.com/gbordier/ProfileUrlRedirect.ashx</uri></author><category term="Hyper-V" scheme="http://blogs.technet.com/b/gbordier/archive/tags/Hyper_2D00_V/" /></entry></feed>