<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Knowledge Base</title>
        <link>http://geekswithblogs.net/urig/category/2997.aspx</link>
        <description>My own personal Knowledge Base - Where I document solutions to annoying technical problems that I encounter at work or at home.</description>
        <language>en-US</language>
        <copyright>urig</copyright>
        <managingEditor>uri.goldstein@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>FIX: Google Toolbar resets/breaks/messes up IE7 toolbars</title>
            <link>http://geekswithblogs.net/urig/archive/2007/04/11/111393.aspx</link>
            <description>&lt;p&gt;Ever since I've upgraded from IE6 to IE7, I've noticed that whenever I reopen my Internet Explorer, all my toolbars get messed up. It's as if they are reset to the original "factory" setting, regardless of how carefully I've tweaked them before previously closing IE7.&lt;/p&gt; &lt;p&gt;Clearly something was wrong, but to my surprise the fault lay not with "Evil Microsoft" but with the "Benevolent Google"'s beloved &lt;a href="http://toolbar.google.com/"&gt;Google Toolbar&lt;/a&gt;(!). I've learned &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1002691&amp;amp;SiteID=1"&gt;here&lt;/a&gt; that the Google Toolbar uses some evil voodoo (&lt;quote&gt;"hijacks ITBarLayout from within its satellite BHO"&lt;/quote&gt;) which interferes with IE7's layout mechanism.&lt;/p&gt; &lt;p&gt;Luckily, a site called &lt;a href="http://www.iecustomizer.com/?url=welcome.asp"&gt;IECustomizer.com&lt;/a&gt; makes &lt;a href="http://www.iecustomizer.com/?url=DisableGoogleBHODownload.asp"&gt;a simple solution available here&lt;/a&gt;. It's a small Windows Registry .reg file that disables the Google Toolbar's &lt;a href="http://en.wikipedia.org/wiki/Browser_Helper_Object"&gt;BHO&lt;/a&gt; with the effect of restoring IE7's toolbars to their normal self, while keeping the Google Toolbar alive and well.&lt;/p&gt; &lt;p&gt;I've tried it and I'm pleased to say that it works. Now it's up to Google to fix their code so other people don't have to go digging for third-part solutions. I wonder how I can submit a bug report...?&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=111393"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=111393" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/111393.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>urig</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2007/04/11/111393.aspx</guid>
            <pubDate>Wed, 11 Apr 2007 18:42:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/111393.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2007/04/11/111393.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/111393.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/111393.aspx</trackback:ping>
        </item>
        <item>
            <title>Wake On LAN</title>
            <link>http://geekswithblogs.net/urig/archive/2007/02/11/106017.aspx</link>
            <description>&lt;p&gt;I use this blog as my private (or should I say protected?) "Knowledge Base" repository. Whenever I bump into an issue and successfully resolve it, I'd blog about it for future reference's sake.&lt;/p&gt; &lt;p&gt;This post is the same, except I wasn't the one to resolve the issue, or even bump into it for that matter. That credit goes to Jeff Atwood over at &lt;a href="http://www.codinghorror.com/blog/"&gt;Coding Horror&lt;/a&gt;, who wrote &lt;a href="http://www.codinghorror.com/blog/archives/000790.html"&gt;a lovely review about "Wake On LAN"&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;WOL is a bit of tech that's integrated into most modern LAN adapters. Even when your computer in sleep mode, the adapter keeps listening and if you "call" it from another machine in your LAN, it will wake up. &lt;/p&gt; &lt;p&gt;For the finer details on how it works, read Jeff's post.&amp;nbsp;His blog&amp;nbsp;is a gem.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=106017"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=106017" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/106017.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>urig</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2007/02/11/106017.aspx</guid>
            <pubDate>Sun, 11 Feb 2007 19:12:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/106017.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2007/02/11/106017.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/106017.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/106017.aspx</trackback:ping>
        </item>
        <item>
            <title>Workaround: How to set an ASP.Net Image's NavigateUrl property without having it HTMLEncoded.</title>
            <link>http://geekswithblogs.net/urig/archive/2006/09/19/91610.aspx</link>
            <description>&lt;p&gt;Just bumped into another one of ASP.Net's annoying quirks. When setting the NavigateUrl property of an &amp;lt;asp:image&amp;gt;,
ASP.Net automatically "HTMLEncodes" the value assigned. So if you'd try to pass a query string in the url, like so:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;code&gt;&amp;lt;asp:image id=&amp;quot;imgExample&amp;quot; runat=&amp;quot;server&amp;quot; navigateurl = &amp;quot;example.jpg?foo=bar&amp;amp;bar=bie&amp;quot; /&amp;gt;&lt;/code&gt;&lt;br /&gt;
you'll end up with something like this on the client side:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;code&gt;&amp;lt;img id=&amp;quot;imgExample&amp;quot; src=&amp;quot;example.jpg?foo=bar&amp;amp;amp;bar=bie&amp;quot; /&amp;gt;&lt;/code&gt;&lt;br /&gt;
which will thoroughly break your query string.&lt;/p&gt;
&lt;p&gt;Note that this also happens when you try to set the NavigateUrl property programmatically.&lt;/p&gt;
&lt;p&gt;The workaround I've come up with is to replace the &amp;lt;asp:image&amp;gt; with an &amp;lt;img&amp;gt; tag. It's not as obvious as it sounds
when you're trying to set the url from the server side.&lt;/p&gt;
&lt;p&gt;If you want to programmatically set the src attribute on an &amp;lt;img&amp;gt; tag from the server side, you'll need to know three things:
&lt;ol&gt;
&lt;li&gt;To make the &amp;lt;img&amp;gt; tag a proper server side control you'll need to add a runat="server" attribute to it.&lt;/li&gt;
&lt;li&gt;On the server side, &amp;lt;img&amp;gt; tags are represented as System.Web.UI.HtmlControls.HtmlImage objects instead of the usual System.Web.UI.WebControls.Image object.&lt;/li&gt;
&lt;li&gt;The HtmlImage object has the property &lt;em&gt;Src&lt;/em&gt; instead of the Image object's &lt;em&gt;NavigateUrl&lt;/em&gt;.&lt;/li&gt;
&lt;/ol&gt;&lt;/p&gt;
&lt;p&gt;Good luck!&lt;br /&gt;
urig&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=91610"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=91610" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/91610.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>urig</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/09/19/91610.aspx</guid>
            <pubDate>Tue, 19 Sep 2006 21:30:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/91610.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/09/19/91610.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/91610.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/91610.aspx</trackback:ping>
        </item>
        <item>
            <title>CustomValidator will validate empty controls - but only in ASP.Net 2.0.</title>
            <link>http://geekswithblogs.net/urig/archive/2006/09/19/91585.aspx</link>
            <description>&lt;p&gt;A while back I &lt;a href="http://geekswithblogs.net/urig/archive/2006/07/27/86434.aspx"&gt;ranted&lt;/a&gt; about ASP.Net's CustomValidator behaving badly - When the control it is set to validate is empty, CustomValidator will (surprisingly) perform no validation.&lt;/p&gt;

&lt;p&gt;Now I've learned that the good people at Microsoft have resolved this issue, but only in ASP.Net 2.0. The CustomValidator now has a new property called &lt;a href="http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.customvalidator.validateemptytext.aspx" target="_blank"&gt;ValidateEmptyText&lt;/a&gt;. As the name implies, when this property is set to true empty controls &lt;strong&gt;will be&lt;/strong&gt; validated by the CustomValidator. &lt;/p&gt;

&lt;p&gt;Too bad this solution is only implemented in ASP.Net 2.0. What does Microsoft expect us to do in projects that are in ASP.Net 1.1? Upgrade??&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=91585"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=91585" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/91585.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>urig</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/09/19/91585.aspx</guid>
            <pubDate>Tue, 19 Sep 2006 18:27:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/91585.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/09/19/91585.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/91585.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/91585.aspx</trackback:ping>
        </item>
        <item>
            <title>ASP.Net CustomValidator is useless for empty controls</title>
            <link>http://geekswithblogs.net/urig/archive/2006/07/27/86434.aspx</link>
            <description>&lt;p&gt;For years I've been living with the unsettling feeling that there's something mysteriously wrong with ASP.Net's CustomValidator control. Every time I made the courageous decision to tackle this elusive control and try to harness it for my use, something would go wrong. Something I couldn't quite put my finger on until now.&lt;/p&gt;

&lt;p&gt;I've just discovered the terrible secret behind the CustomValidator control: it doesn't fire if the control to be validated has an empty value. Here it is, in black on white, from the MSDN Library:&lt;br /&gt;
&lt;br /&gt;
&lt;q&gt;&lt;strong&gt;Note&lt;/strong&gt; If the input control is empty, no validation functions are called and validation succeeds. Use a RequiredFieldValidator control to require the user to enter data in the input control.&lt;/q&gt;&lt;/p&gt;

&lt;p&gt;WTF?! Who ever came up with *that* constraint? And why did I take so long to find this out? (answer: I should have been more patient and read the documentation through.)&lt;/p&gt;

&lt;p&gt;The problem is that it's easy to imagine a scenario where checking whether a control is empty is an essential part of a more complex logic which warrants a CustomValidator. What then?&lt;/p&gt;

&lt;p&gt;In my current scenario, I attached the CustomValidator to a TextBox to see whether it was empty or not, in conjuction with checking whether a DropDownList had a specific value. When I did that, the CustomValidator simply would not fire - not on the client nor on the server. Luckily for me, I was able to attach to the DropDownList instead of the TextBox and then the control would fire properly.&lt;/p&gt;

How did some of you overcome this limitation of ASP.Net's CustomValidator?&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=86434"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=86434" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/86434.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>urig</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/07/27/86434.aspx</guid>
            <pubDate>Thu, 27 Jul 2006 20:17:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/86434.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/07/27/86434.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/86434.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/86434.aspx</trackback:ping>
        </item>
        <item>
            <title>Force Explorer to Start With the Folder You Want</title>
            <link>http://geekswithblogs.net/urig/archive/2006/07/19/85638.aspx</link>
            <description>&lt;p&gt;How many times a day do you click the Windows Explorer shortcut in your Quick Launch toolbar and then navigate to the folder where you do most of your work?&lt;/p&gt;

&lt;p&gt;Here's a tip from the wonderful &lt;a href="http://www.annoyances.org/" target="_blank"&gt;Windows Annoyances&lt;/a&gt; website that saves me the trouble of navigating the same path over and over again - I &amp;quot;&lt;a href="http://www.annoyances.org/exec/show/article01-419" target="_blank"&gt;Force Explorer to Start With the Folder You Want&lt;/a&gt;&amp;quot;.&lt;/p&gt;

&lt;p&gt;Make me mad to think why Microsoft fail to provide easy documentation of explore.exe's command line options.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=85638"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=85638" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/85638.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Uri Goldstein</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/07/19/85638.aspx</guid>
            <pubDate>Wed, 19 Jul 2006 13:18:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/85638.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/07/19/85638.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/85638.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/85638.aspx</trackback:ping>
        </item>
        <item>
            <title>The neatest Notepad trick ever.</title>
            <link>http://geekswithblogs.net/urig/archive/2006/07/10/84586.aspx</link>
            <description>&lt;P&gt;Who knew the old Notepad.exe still had secrets hiding among its modest codebase?&lt;/P&gt;
&lt;P&gt;Try this: Open a new text file with Notepad. On the first line type .LOG (in capital letters). Save the file and exit Notepad.&lt;/P&gt;
&lt;P&gt;Now, every time you open the file in Notepad, it will be opened on the last line and a time stamp will appended to it just before that. The file is effectively a poor man's journal. How neat is that? :)&lt;/P&gt;
&lt;P&gt;via &lt;A href=http://www.gadgetopia.com/post/5398 target="_blank"&gt;Gadgetopia&lt;/A&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=84586"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=84586" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/84586.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Uri Goldstein</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/07/10/84586.aspx</guid>
            <pubDate>Mon, 10 Jul 2006 20:09:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/84586.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/07/10/84586.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/84586.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/84586.aspx</trackback:ping>
        </item>
        <item>
            <title>How to make Windows XP prefer one network connection over the other</title>
            <link>http://geekswithblogs.net/urig/archive/2006/07/10/84543.aspx</link>
            <description>&lt;P&gt;I have two network adapters in my home computer. One goes into my cable modem and hooks me up to the internet. The other goes to my router (which further connects to my XBOX and to a laptop whenever I have one).&lt;/P&gt;
&lt;P&gt;Recently I've been experiencing an annoying problem. The dialer program that connects me to my ISP via my cable modem failed to connect and consistently reported "Error 769 - The specific destination is not reachable".&lt;/P&gt;
&lt;P&gt;After some tinkering I realized that this would go away only if I disabled the network connection that goes to my router. I would disable the connection, connect to my ISP and only then re-enable the connection. My conclusion was that when both network connections are enabled the dialer looks for my ISP's host on the connection that goes to my router, when it should actually look for it on the other connection - the one that goes to the cable modem.&lt;/P&gt;
&lt;P&gt;So I posted on microsoft.public.windowsxp.network_web and a prompt reply from &lt;A href="http://ecross.mvps.org/" target=_blank&gt;Eric Cross&lt;/A&gt; who is an &lt;A href="http://mvp.support.microsoft.com/" target=_blank&gt;MVP&lt;/A&gt; lead me to a Microsoft Support article titled &lt;A href="http://support.microsoft.com/default.aspx?scid=kb;en-us;299540" target=_blank&gt;"An explanation of the Automatic Metric feature for Internet Protocol routes"&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The short story is this - Windows XP automatically assigns a "metric value" to each network connection. The metric signifies the speed in which the connection can be used. A higher metric means a slower connection. Windows XP then uses the metric values to decide by which connection to send information out to the network. Obviously Windows XP was making the wrong decision when my dialer program was trying to connect.&lt;/P&gt;
&lt;P&gt;The solution to my problem was to override the automatic metric value manually for both network connections. This is how: 
&lt;OL&gt;
&lt;LI&gt;In Control Panel, double-click Network Connections.&lt;/LI&gt;
&lt;LI&gt;Right-click a network interface, and then click Properties.&lt;/LI&gt;
&lt;LI&gt;Click Internet Protocol (TCP/IP), and then click Properties.&lt;/LI&gt;
&lt;LI&gt;On the General tab, click Advanced.&lt;/LI&gt;
&lt;LI&gt;To specify a metric, on the IP Settings tab, click to clear the Automatic metric check box, and then enter the metric that you want in the Interface Metric field.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Having assigned a lower metric value to my modem's connection solved the problem.&lt;/P&gt;
&lt;P&gt;Thanks again Eric. :)&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=84543"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=84543" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/84543.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Uri Goldstein</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/07/10/84543.aspx</guid>
            <pubDate>Mon, 10 Jul 2006 12:08:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/84543.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/07/10/84543.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/84543.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/84543.aspx</trackback:ping>
        </item>
        <item>
            <title>MS SQL locks sa account out automatically on having wrong password entered.</title>
            <link>http://geekswithblogs.net/urig/archive/2006/05/29/79969.aspx</link>
            <description>&lt;p&gt;Strange behavior from MS SQL Server 2005. I "spontaneously" get this error when trying to connect:

&lt;pre&gt;Login failed for user 'sa' because the account is currently locked out. The system administrator can unlock it.  (Microsoft SQL Server, Error: 18486).&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;After some digging I've found &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=306429&amp;SiteID=1" target="_blank"&gt;
this useful chain of posts&lt;/a&gt;, logged into the server locally and ran the following line:

&lt;code&gt;ALTER LOGIN sa WITH PASSWORD = 'your_password_here' UNLOCK&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;I suspect what happened was that MS SQL Server decided to lock the sa login after I made a few login attempts with the wrong password. Assuming that's what happened, does anybody know how to change this "lockdown" behavior on behalf of MS SQL Server 2005?&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=79969"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=79969" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/79969.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Uri Goldstein</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/05/29/79969.aspx</guid>
            <pubDate>Mon, 29 May 2006 20:36:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/79969.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/05/29/79969.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/79969.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/79969.aspx</trackback:ping>
        </item>
        <item>
            <title>.Net 2.0 SqlParameter rounds DateTime values (?)</title>
            <link>http://geekswithblogs.net/urig/archive/2006/05/21/79115.aspx</link>
            <description>&lt;p&gt;Just ran into a bit of nastiness with the &lt;em&gt;SqlParameter&lt;/em&gt; class in .Net 2.0.&lt;/p&gt;

&lt;p&gt;The scenario: I have a &lt;em&gt;DateTime&lt;/em&gt; with a value of '05/30/2006 23:59:59.999' (that's 999 milliseconds). When I save it to a (Microsoft SQL Server 2005) DB using a stored procedure invoked by &lt;em&gt;SqlHelper.ExecuteNonQuery()&lt;/em&gt;, the value surprisingly changes to '05/31/2006 00:00:00.000'.&lt;/p&gt;

&lt;p&gt;A bit of step-by-step debugging led me to the culprit. When the &lt;em&gt;DateTime&lt;/em&gt; is stored in a &lt;em&gt;SqlParameter&lt;/em&gt; to be passed to &lt;em&gt;SqlHelper.ExecuteNonQuery()&lt;/em&gt;, the &lt;em&gt;SqlParameter&lt;/em&gt; stores the original value in its &lt;em&gt;Value&lt;/em&gt; property, but stores a rounded value in its &lt;em&gt;SqlValue&lt;/em&gt; property. My best guess is that what's actually passed to Microsoft SQL Server is the &lt;em&gt;SqlValue&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;So how come &lt;em&gt;SqlParameter&lt;/em&gt; does this rounding? Is it justified? Why is it not documented? And curiously - is this behavior new to .Net 2.0? You see there's no reference to a &lt;em&gt;SqlValue&lt;/em&gt; property in the Visual Studio 2003 documentation for &lt;em&gt;SqlParameter&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;If anyone can shed some more light on this, I'd greatly appreciate it. :)&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=79115"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=79115" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/urig/aggbug/79115.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Uri Goldstein</dc:creator>
            <guid>http://geekswithblogs.net/urig/archive/2006/05/21/79115.aspx</guid>
            <pubDate>Sun, 21 May 2006 20:52:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/urig/comments/79115.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/urig/archive/2006/05/21/79115.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/urig/comments/commentRss/79115.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/urig/services/trackbacks/79115.aspx</trackback:ping>
        </item>
    </channel>
</rss>