<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Kevin Dente's Blog</title><link>http://weblogs.asp.net/kdente/default.aspx</link><description>The Blip in the Noise</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>New utility for dealing with off-screen apps - Front And Center! </title><link>http://weblogs.asp.net/kdente/archive/2008/11/21/new-utility-for-dealing-with-off-screen-apps-front-and-center.aspx</link><pubDate>Fri, 21 Nov 2008 20:07:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6749775</guid><dc:creator>kevindente</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=6749775</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2008/11/21/new-utility-for-dealing-with-off-screen-apps-front-and-center.aspx#comments</comments><description>
&lt;p&gt;From time to time I find myself faced with a really annoying problem - a Windows application that has positioned itself offscreen. This usually happens for one of two reasons:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A bug in the software. Sometimes things go terribly wrong, and the application, for lack of a better phrase, flips out. I just had this happen last week with Firefox - it would end up above and to the left of my screen (might have been a script or add-in, I'm not sure). Another common cause is an application that writes bogus data when trying to remember its screen position for the next time it's launched. Close it and relaunch, and bang, it's off-screen.&lt;br&gt;&lt;br&gt;&lt;/li&gt;

&lt;li&gt;Remote Desktop'ing into my multi-monitor desktop from my laptop. In that case, everything that was on the second monitor suddenly becomes off screen, and I need to move it back to the primary monitor in order to interact with it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Now, Windows does provide a way to deal with this problem - by right-clicking on the item in the task bar, selecting Move, and using the keyboard (nicely described &lt;a href="http://www.howtogeek.com/howto/windows/bring-misplaced-off-screen-windows-back-to-your-desktop-keyboard-trick/" target="_blank" mce_href="http://www.howtogeek.com/howto/windows/bring-misplaced-off-screen-windows-back-to-your-desktop-keyboard-trick/"&gt;here&lt;/a&gt;). It works, but I always find it to be clunky and a bit flaky (sometimes it take a lot of keyboarding in just the right way to get the app to pop on screen). So I took a couple of hours and hacked together my own solution to the problem - a utility called "Front and Center!"&lt;/p&gt;

&lt;p&gt;You can see a screen shot of the app &lt;a href="http://www.denteworld.com/files/FrontAndCenterScreenShot.jpg" target="_blank" mce_href="http://www.denteworld.com/files/FrontAndCenterScreenShot.jpg"&gt;here&lt;/a&gt;&amp;nbsp; (I tried to embed the image in this post, but for some reason its not working, not sure why).&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Hopefully it's pretty apparent what's going on. The app enumerates all the top level windows and lists those that are offscreen, along with their coordinates and size.&amp;nbsp; Highlight it and click "Front and Center!" and it will move the app to your primary monitor. &lt;/p&gt;

&lt;p&gt;The app requires at least the .NET Framework 2.0 be installed. The app itself requires no installation - just unzip and run. &lt;br&gt;&lt;/p&gt;

&lt;p&gt;I hacked this together pretty quick, so I'm sure it has problems. I've only tested with my standard ("center and right") dual monitor setup on Vista - I may very well have done something dumb that causes problems for other configs. Drop me a line if you have problems or ideas for improvement.&lt;/p&gt;

&lt;p&gt;You can download it &lt;a href="http://www.denteworld.com/files/FrontAndCenter_01.zip" mce_href="http://www.denteworld.com/files/FrontAndCenter_01.zip"&gt;here&lt;/a&gt;. &lt;br&gt;&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7991452059779922";
/* 234x60, created 12/17/08 */
google_ad_slot = "7818191675";
google_ad_width = 234;
google_ad_height = 60;
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"&gt;
&lt;/script&gt;
&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6749775" width="1" height="1"&gt;</description><enclosure url="http://weblogs.asp.net/kdente/attachment/6749775.ashx" length="35503" type="image/jpeg" /><category domain="http://weblogs.asp.net/kdente/archive/tags/Windows/default.aspx">Windows</category><category domain="http://weblogs.asp.net/kdente/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Programmers and typists</title><link>http://weblogs.asp.net/kdente/archive/2008/11/19/programmers-and-typists.aspx</link><pubDate>Wed, 19 Nov 2008 22:38:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6746979</guid><dc:creator>kevindente</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=6746979</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2008/11/19/programmers-and-typists.aspx#comments</comments><description>&lt;p&gt;The &lt;span class="query"&gt;inimitable Jeff Atwood of Coding Horror fame (or is it Stack Overflow fame now?) recently &lt;a href="http://www.codinghorror.com/blog/archives/001188.html" target="_blank" mce_href="http://www.codinghorror.com/blog/archives/001188.html"&gt;blogged&lt;/a&gt; about the importance of typing skills for developers. In typical smackdown style, he posited that "coding is just typing". Jimmy Bogard &lt;a href="http://www.lostechies.com/blogs/jimmy_bogard/archive/2008/11/18/programmers-are-not-typists-first.aspx" target="_blank" mce_href="http://www.lostechies.com/blogs/jimmy_bogard/archive/2008/11/18/programmers-are-not-typists-first.aspx"&gt;disagreed&lt;/a&gt;, saying that the number of lines of code typed per day is actually quite small, and the productivity difference for typing that much code is quite negligable.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;I happen to agree with both of them. What neither discussed is that as a developer, &lt;i&gt;I type a hell of a lot more than just code&lt;/i&gt;. I type emails. I type Word documents. I submit questions to &lt;a href="http://stackoverflow.com/" target="_blank" mce_href="http://stackoverflow.com/"&gt;Stack Overflow&lt;/a&gt;. I type search terms into Google and URLs into the browser. I &lt;a href="http://twitter.com/kevindente" target="_blank" mce_href="http://twitter.com/kevindente"&gt;Twitter&lt;/a&gt;. My ability to do all of those things efficiently is affected by how well I type, and all of those things are critically important to doing my job. So while typing fast may not be hugely important for being a &lt;i&gt;coder&lt;/i&gt;, it &lt;i&gt;is&lt;/i&gt; hugely important for being a &lt;i&gt;developer&lt;/i&gt;. I type all damn day, whether or not I'm coding that day.&lt;br&gt;&lt;/p&gt;&lt;p&gt;There's another important point that I think needs to be stressed - &lt;i&gt;good typing technique can help avoid repetitive stress injuries&lt;/i&gt;. I'm pretty convinced that my lack of RSI problems is at least in part due to good typing technique imparted by my 7th grade typing teacher. Whenever I feel a glimmer of discomfort in my hands, I can almost always attribute it to either a) too much mousing (know thy keyboard shortcuts) or b) falling back into sloppy typing technique (my great failing is one-handed modifier action - e.g. ctrl-w with one hand instead of two). Over the years I've known people that literally could not work at a computer any more due to RSI problems. Now if THAT isn't a terrifying thought that keeps your hands glued to your home keys...&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6746979" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Come hear me blather on the Herding Code podcast</title><link>http://weblogs.asp.net/kdente/archive/2008/08/19/come-hear-me-blather-on-the-herding-code-podcast.aspx</link><pubDate>Wed, 20 Aug 2008 03:11:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6541085</guid><dc:creator>kevindente</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=6541085</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2008/08/19/come-hear-me-blather-on-the-herding-code-podcast.aspx#comments</comments><description>&lt;p&gt;In an effort to plumb the outermost depths of blogging lameness, I'm writing today to announce my participation in a podcast about software development. Why is that lame? Because the podcast started &lt;i&gt;over two months ago&lt;/i&gt;. Yes, that's right, I can't even be bothered to pimp my own stuff. Like I said, lame.&lt;/p&gt;&lt;p&gt;The podcast consists of Jon Galloway, Scott Koon (aka Lazycoder), K Scott Allen (aka OdeToCode), and little old me talking roundtable style about whatever software development related topic tickles our fancy that week. Come on over and give us a &lt;a href="http://www.herdingcode.com" mce_href="http://www.herdingcode.com"&gt;listen&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;I want to give a shoutout to my wife Kathi for coming up with the name. We'd toyed around with several other names, most of them profoundly lame. We were about to pull the trigger on the least lame name (which was still pretty lame) when she rode in on her white horse and saved us from ourselves by coming up with Herding Code (and 3 others which were all better than any of our options, but HC was a clear winner). If you need a kick-ass web designer, &lt;a href="http://www.mccrackendesign.com" mce_href="http://www.mccrackendesign.com"&gt;look her up&lt;/a&gt;. No, she didn't design the Herding Code web site...she's too busy doing real work. &lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6541085" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Locating the active item in Solution Explorer</title><link>http://weblogs.asp.net/kdente/archive/2008/04/30/locating-the-active-item-in-solution-explorer.aspx</link><pubDate>Wed, 30 Apr 2008 22:12:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6146066</guid><dc:creator>kevindente</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=6146066</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2008/04/30/locating-the-active-item-in-solution-explorer.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/" mce_href="http://www.hanselman.com/blog/"&gt;Scott Hanselman&lt;/a&gt; tweeted a &lt;a href="http://www.clariusconsulting.net/blogs/kzu/archive/2008/04/18/Locatingtheactiveiteminthesolutionexplorer.aspx" mce_href="http://www.clariusconsulting.net/blogs/kzu/archive/2008/04/18/Locatingtheactiveiteminthesolutionexplorer.aspx"&gt;link&lt;/a&gt; to Daniel Cazzulino's blog post about automatically synchronizing the Visual Studio Solution Explorer with the active item open in the editor. It's a great tip, but I personally have never been a fan of the Track Active Item option - I find that it slows down the IDE, causes distracting visuals, and often just isn't the behavior I want. I do, however, often want a way to &lt;i&gt;manually&lt;/i&gt; sync up the Solution Explorer with my currently open item. &lt;/p&gt;&lt;p&gt;Fortunately, it's very easy to accomplish this with a very simple macro. The idea is very simple - just turn on the Track Active Item option that Daniel mentions, and turn it off again. It's a two-liner:&lt;/p&gt;&lt;p&gt;Sub SyncSolutionExplorer()&lt;br&gt;&amp;nbsp;&amp;nbsp; DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")&lt;br&gt;&amp;nbsp;&amp;nbsp; DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")&lt;br&gt;End Sub&lt;/p&gt;&lt;p&gt;You can wire up that macro to a toolbar button and/or a keyboard hotkey, and (as ScottHa would say) bam, you're golden.&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6146066" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/Visual+Studio/default.aspx">Visual Studio</category></item><item><title>Is the Visual Studio 2008 Javascript debugger crippled?</title><link>http://weblogs.asp.net/kdente/archive/2007/11/27/is-the-visual-studio-2008-javascript-debugger-crippled.aspx</link><pubDate>Wed, 28 Nov 2007 05:55:34 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:5360023</guid><dc:creator>kevindente</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=5360023</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/11/27/is-the-visual-studio-2008-javascript-debugger-crippled.aspx#comments</comments><description>&lt;p&gt;Sadly, it appears the answer is "yes". Specifically, the debugger has a huge limitation - one that's been there since Visual Studio 2005 (maybe even 2003). You can't set a breakpoint on the first line of an anonymous function. Consider, for example, the following:&lt;/p&gt; &lt;div class="csharpcode"&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;function&lt;/span&gt; aFunc()&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;{&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;  alert(&lt;span class="str"&gt;"hi"&lt;/span&gt;);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;}&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; aFunc2 = &lt;span class="kwrd"&gt;function&lt;/span&gt;()&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;{&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    alert(&lt;span class="str"&gt;"hi, yourself"&lt;/span&gt;);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;    alert(&lt;span class="str"&gt;"what's your problem?"&lt;/span&gt;);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;}&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;aFunc();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;aFunc2();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;pre&gt;&amp;nbsp;&lt;/pre&gt;&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;Here aFunc is a named function, and aFunc2 is a variable that points to an anonymous function. With the Visual Studio debugger, you can set a breakpoint on line 4, and line 10, but not line 9. &lt;/p&gt;
&lt;p&gt;Why is this such a problem? Because most all the major Javascript libraries (at least Prototype, YUI, JQuery, and even, to a lesser extent, Microsoft's own ASP.NET AJAX) use anonymous functions up the ying yang - mostly for object methods. In other words, you can't set a breakpoint on the first line of most functions in most AJAX libraries. And if the function has only one line, yeah, you're screwed - no break-ey break-ey for you.&lt;/p&gt;
&lt;p&gt;When I learned that this bug wasn't fixed in Visual Studio 2008 I was, in a word, dumbfounded. Isn't improved Javascript development one of the primary new features of VS2008? &lt;/p&gt;
&lt;p&gt;Now, when I characterized the problem as being related to anonymous functions, that isn't quite right. In the above code, even if you give the aFunc2 function a name - "var aFunct2 = function theFunc()..."- the problem remains. There's a brief discussion of this issue on the ASP.NET forums &lt;a href="http://forums.asp.net/t/1082063.aspx"&gt;here&lt;/a&gt;&amp;nbsp;(note the date - March 2007), but the explanation rather nebulous. Whatever the root cause, it's a horrible limitation that I'm stunned wasn't addressed for RTM. &lt;/p&gt;
&lt;p&gt;Guess it's back to Firebug for me. Or maybe it's time for another look at Aptana.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=5360023" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/Visual+Studio/default.aspx">Visual Studio</category></item><item><title>Can we stop with the "Change my homepage" crap please?</title><link>http://weblogs.asp.net/kdente/archive/2007/08/21/can-we-stop-with-the-quot-change-my-homepage-quot-crap-please.aspx</link><pubDate>Tue, 21 Aug 2007 21:23:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:3579332</guid><dc:creator>kevindente</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=3579332</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/08/21/can-we-stop-with-the-quot-change-my-homepage-quot-crap-please.aspx#comments</comments><description>&lt;p&gt;I finally got around to installing the latest beta of Windows Live Writer, my favorite blogging tool. As part of the install, it displays the following dialog:&lt;/p&gt; &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/kdente/WindowsLiveWriter/CanwestopwiththeChangemyhomepagecrapplea_CA46/LiveWriterInstall.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="258" alt="LiveWriterInstall" src="http://weblogs.asp.net/blogs/kdente/WindowsLiveWriter/CanwestopwiththeChangemyhomepagecrapplea_CA46/LiveWriterInstall_thumb.jpg" width="596" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;I can't believe that in this day and age, applications still want to change my home page.&amp;nbsp; The checkbox was checked by default, by the way - I unchecked it before I took the screenshot. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=3579332" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Visual Studio install asking for XP SP2 on Vista - the solution</title><link>http://weblogs.asp.net/kdente/archive/2007/08/09/visual-studio-install-asking-for-xp-sp2-on-vista-the-solution.aspx</link><pubDate>Fri, 10 Aug 2007 04:56:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:3454369</guid><dc:creator>kevindente</dc:creator><slash:comments>11</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=3454369</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/08/09/visual-studio-install-asking-for-xp-sp2-on-vista-the-solution.aspx#comments</comments><description>&lt;p&gt;&amp;nbsp;A while back I &lt;a href="http://weblogs.asp.net/kdente/archive/2007/03/27/unable-to-install-visual-studio-2005-on-windows-vista.aspx" mce_href="http://weblogs.asp.net/kdente/archive/2007/03/27/unable-to-install-visual-studio-2005-on-windows-vista.aspx"&gt;blogged&lt;/a&gt; about a problem I had installing Visual Studio 2005 on a fresh Vista install - it complained about requiring Windows XP SP2. I never found a satisfactory explanation, but copying the DVD contents to the hard drive worked around the problem. The stock suggestion was to check the Compatibility settings on the property page for setup.exe -&amp;nbsp; but in my case no compatibility mode was set. Or was it? &lt;/p&gt;&lt;p&gt;Recently I tried installing Visual Studio 2008, and got the same error. Following a suggestion from the MSDN forums, I checked the registry key &lt;span id="_ctl0_MainContent_PostFlatView"&gt;&lt;span&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Lo and behold, it contained an entry for %tempdir%\setup.exe. But I'm not running setup.exe from the temp dir, I'm running it from the DVD, so that entry shouldn't affect anything, right? Wrong. When you run the installer from the DVD, it appears to copy itself to the the temp dir and run itself from there. At that point, the compatibility flag is in effect.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Where did the registry setting come from in the first place? I have no idea. But removing it allows the Visual Studio install to proceed.&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=3454369" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/Visual+Studio/default.aspx">Visual Studio</category></item><item><title>Empty DIV takes up space after setting innerHTML to blank on IE (aka blank lines after UpdatePanel postback)</title><link>http://weblogs.asp.net/kdente/archive/2007/06/29/empty-div-takes-up-space-after-setting-innerhtml-to-blank.aspx</link><pubDate>Fri, 29 Jun 2007 21:18:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2978197</guid><dc:creator>kevindente</dc:creator><slash:comments>26</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2978197</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/06/29/empty-div-takes-up-space-after-setting-innerhtml-to-blank.aspx#comments</comments><description>&lt;p&gt;Maybe this is common knowledge, but my co-worker and I spent some time chasing this down today, so I figured I'd post it in the hope that it will save other people some time.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Normally, a empty, unstyled DIV reserves no space in an HTML document. However, it seems that under Internet Explorer (we were testing under IE7), if you set the innerHTML property of such a div to an empty string, suddenly the DIV starts taking up space. In other words, if you have this:&lt;/p&gt;&lt;p&gt;some text &lt;br&gt;&amp;lt;div id = "theDiv"&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;some more text&lt;br&gt;&lt;br&gt;and execute a line of script that does this:&lt;/p&gt;&lt;p&gt;document.getElementById("theDiv").innerHTML = "";&lt;/p&gt;&lt;p&gt;then suddenly a blank line will start appearing in between "some text" and "some more text" - the DIV now occupies space in the flow. This doesn't happen in Firefox, and I believe it's a bug in IE.&lt;/p&gt;&lt;p&gt;We were seeing this using ASP.NET AJAX. We have multiple UpdatePanels on a page, and one of them was rendering empty content. After an async postback, a blank line started appearing where the empty UpdatePanel was. The UpdatePanel script code sets the innerHTML property to the result of the async-postback (blank in this case), and suddenly the UpdatePanel DIV was taking up space where it hadn't before.&lt;br&gt;&lt;br&gt;The fix in our case was easy - set the RenderMode property of the UpdatePanel to "Inline".&lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2978197" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category><category domain="http://weblogs.asp.net/kdente/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://weblogs.asp.net/kdente/archive/tags/AJAX/default.aspx">AJAX</category></item><item><title>Hacking a 100% zoom feature onto NoSquint with KeyConfig</title><link>http://weblogs.asp.net/kdente/archive/2007/04/23/hacking-a-100-zoom-feature-onto-nosquint-with-keyconfig.aspx</link><pubDate>Mon, 23 Apr 2007 16:48:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2344655</guid><dc:creator>kevindente</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2344655</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/04/23/hacking-a-100-zoom-feature-onto-nosquint-with-keyconfig.aspx#comments</comments><description>&lt;p&gt;I recently &lt;a href="http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-small-font-sizes-in-firefox-nosquint.aspx" mce_href="http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-small-font-sizes-in-firefox-nosquint.aspx"&gt;blogged&lt;/a&gt; about the NoSquint Firefox extension, for remembering per-site text zoom levels. I also recently &lt;a href="http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-conflicting-keyboard-hotkeys-in-firefox.aspx" mce_href="http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-conflicting-keyboard-hotkeys-in-firefox.aspx"&gt;blogged&lt;/a&gt; about the Keyconfig extension, which allows you to change hotkey bindings. I guess you could say that this post is the bastard child of those two posts.&lt;/p&gt;&lt;p&gt;The one feature I've been wanting from NoSquint is a keyboard hotkey that jumps the zoom level straight to 100%. I keep my default zoom level at 160%, but many sites just don't render well at that level. A few are downright unusable. I can hit Ctrl-dash a few times to dial down the zoom on those sites, but I really wanted a way to easily jump right to 100% (the standard Ctrl-0 Firefox hotkey jumps to the default zoom, not to 100%, when running NoSquint).&amp;nbsp; I submitted an enhancement request to the extensions author, but this morning I realized that I could probably just add the hotkey myself. I was browsing the NoSquint source when I struck on the idea to use Keyconfig to create the binding, rather than mess around with unpacking, changing, and repackaging the source JAR file.&amp;nbsp;&lt;br&gt; &lt;/p&gt;&lt;p&gt;Here's how you do it. Bring up the Keyconfig configuration UI (Tools/KeyConfig). Click the "Add a new key" button. Give the hotkey a name (I used "Zoom to 100%"), and in the big textbox enter:&lt;/p&gt;&lt;p&gt;NoSquint.zoom(gBrowser.selectedBrowser, 100);&lt;br&gt;NoSquint.saveCurrentZoom();&lt;br&gt;NoSquint.updateStatus();&lt;br&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Save the hotkey definition, and bind it to the hotkey of your choice (I used Ctrl-Alt-0). &lt;br&gt;&lt;/p&gt;&lt;p&gt;That's it. Now when I hit Ctrl-Alt-0, my zoom level jumps right to 100%. Perfecto.&lt;br&gt;&lt;br&gt;&lt;b&gt;&amp;nbsp;UPDATE &lt;/b&gt;-&amp;nbsp; the original version of the hotkey code didn't remember the 100% setting. I've updated it so it does.&lt;br&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2344655" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category><category domain="http://weblogs.asp.net/kdente/archive/tags/Firefox/default.aspx">Firefox</category></item><item><title>Dealing with Conflicting Keyboard Hotkeys in Firefox</title><link>http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-conflicting-keyboard-hotkeys-in-firefox.aspx</link><pubDate>Fri, 06 Apr 2007 04:15:24 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2186075</guid><dc:creator>kevindente</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2186075</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-conflicting-keyboard-hotkeys-in-firefox.aspx#comments</comments><description>&lt;p&gt;It's been a good week for new (to me) Firefox extensions. &lt;/p&gt; &lt;p&gt;Any serious Firefox user will tell you that it's all about the extensions. Unfortunately, if you install enough extensions, you'll eventually encounter a conflict between the hotkeys registered by different extensions. A few extensions are nice enough to allow you to redefine the hotkeys. Most do not. I've been struggling with this lately - the &lt;a href="http://gorgias.de/mfe/"&gt;Focus Last Selected Tab&lt;/a&gt; and &lt;a href="http://imagezoom.yellowgorilla.net/"&gt;Image Zoom&lt;/a&gt; extensions register conflicting hotkeys - I've been wanting to use the FLST version, but Image Zoom was taking priority.&lt;/p&gt; &lt;p&gt;I just ran across the &lt;a href="http://mozilla.dorando.at/readme.html"&gt;keyconfig&lt;/a&gt; extension, which solved my problem handily. It allowed me to suppress the Image Zoom hotkey (it can also reassign operations to a different hotkey).&amp;nbsp;Problem solved. &lt;/p&gt; &lt;p&gt;Recommended. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2186075" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Dealing with Small Font Sizes in Firefox - NoSquint</title><link>http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-small-font-sizes-in-firefox-nosquint.aspx</link><pubDate>Fri, 06 Apr 2007 03:48:55 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2185991</guid><dc:creator>kevindente</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2185991</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/04/05/dealing-with-small-font-sizes-in-firefox-nosquint.aspx#comments</comments><description>&lt;p&gt;Generally, I find that the font sizes&amp;nbsp;used on many, if not most, web sites, are too damn small - especially on a 15" UXGA laptop screen. To avoid having to hit Ctrl-+ (text zoom) on every page I visited,&amp;nbsp;I've been increasing&amp;nbsp;the the minimum font size in the Firefox Options dialog. But this isn't an ideal solution - it screws up the layout of a lot of&amp;nbsp;web sites. And minimum means minimum - you can't use Ctrl- - to zoom out and shrink the text size. &lt;/p&gt; &lt;p&gt;This week I ran across the &lt;a href="http://urandom.ca/nosquint/"&gt;NoSquint&lt;/a&gt; Firefox extension, which offers a much better solution. It allows you to specify a default zoom level used when pages load. Moreover, it can remember zoom levels per-site, so that sites with particularly sadistic designers can be set to zoom in more by default. It ROCKS! &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2185991" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Unable to install Visual Studio 2005 on Windows Vista</title><link>http://weblogs.asp.net/kdente/archive/2007/03/27/unable-to-install-visual-studio-2005-on-windows-vista.aspx</link><pubDate>Wed, 28 Mar 2007 04:50:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2128388</guid><dc:creator>kevindente</dc:creator><slash:comments>43</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2128388</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/03/27/unable-to-install-visual-studio-2005-on-windows-vista.aspx#comments</comments><description>&lt;p&gt;I&amp;#39;ve got a brand-spanking new, clean install of Vista on my laptop, and I&amp;#39;m trying to install Visual Studio 2005 on it. Unfortunately, I&amp;#39;m not getting very far. The installer always displays the following dialog, complaining that I don&amp;#39;t have XP SP 2 installed:&lt;/p&gt;&lt;p&gt;&lt;strike&gt;&lt;img src="http://home.comcast.net/~kdente/blog/VS2005InstallError.jpg" /&gt;&lt;/strike&gt;&lt;/p&gt;&lt;p&gt;The only related info I&amp;#39;ve found from Microsoft is on the VS2005 on Vista &lt;a href="http://msdn2.microsoft.com/en-us/vstudio/aa964140.aspx"&gt;issue list&lt;/a&gt;, which states that &amp;quot;Visual Studio products fail to install in XP compatibility mode&amp;quot;. However, I&amp;#39;m not selecting any compatibility mode when running the install. I&amp;#39;ve run the install as administrator, but no difference. I&amp;#39;ve tried disabling UAC, but no difference. Does anyone know how to get around this problem? &lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/vstudio/aa964140.aspx"&gt;&lt;br /&gt;&lt;/a&gt;&lt;strong&gt;UPDATE - &lt;/strong&gt;Although Scott Guthrie and crew graciously offered to help track down the problem, I haven&amp;#39;t heard back from them after our initial exchange. However, based on other recommendations that I found online, I copied the DVD contents to my hard drive and successfully ran the install from there. My guess is that when the installer is run from the DVD it ends up running in XP compatibility mode - but I have no idea why. &lt;br /&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2128388" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/Visual+Studio/default.aspx">Visual Studio</category></item><item><title>Renaming the blog - finally</title><link>http://weblogs.asp.net/kdente/archive/2007/03/21/renaming-the-blog-finally.aspx</link><pubDate>Wed, 21 Mar 2007 22:53:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2076361</guid><dc:creator>kevindente</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2076361</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/03/21/renaming-the-blog-finally.aspx#comments</comments><description>&lt;p&gt;I&amp;#39;ve been meaning to rename this blog for ages. The whole PuppiesAndIceCream thing was originally just a dumb joke from when I renamed the blog the first time, and I never meant for it to stick. But being the unimaginative person that I am, I never came up with another name, and so it has stayed. &lt;/p&gt;&lt;p&gt;Then I today I read Clemens &lt;a href="http://friends.newtelligence.net/clemensv/PermaLink,guid,d34b31f2-51bd-4f58-be3d-a691bea29f7a.aspx"&gt;post&lt;/a&gt; about Blogger Types, and his description of &amp;quot;The Blip In The Noise&amp;quot; so precisely matched this blog that I simply had to &lt;strike&gt;steal&lt;/strike&gt; adopt it. Hope you don&amp;#39;t mind, Clemens - let me know if you do. &lt;/p&gt;&lt;p&gt;So, the puppies are gone and the ice cream is all eaten.&amp;nbsp; We now return you to your regularly scheduled program.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2076361" width="1" height="1"&gt;</description></item><item><title>Running Assembly Reflector Add-in Updated for Reflector 5.0</title><link>http://weblogs.asp.net/kdente/archive/2007/03/19/running-assembly-reflector-add-in-updated-for-reflector-5-0.aspx</link><pubDate>Tue, 20 Mar 2007 04:34:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2065487</guid><dc:creator>kevindente</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2065487</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/03/19/running-assembly-reflector-add-in-updated-for-reflector-5-0.aspx#comments</comments><description>&lt;p&gt;For details and the download link, go &lt;a href="http://weblogs.asp.net/kdente/articles/438539.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2065487" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/Running+Assembly+Reflector+Add-in/default.aspx">Running Assembly Reflector Add-in</category><category domain="http://weblogs.asp.net/kdente/archive/tags/.NET/default.aspx">.NET</category></item><item><title>VMWare on Vista Lameness</title><link>http://weblogs.asp.net/kdente/archive/2007/03/14/vmware-on-vista-lameness.aspx</link><pubDate>Thu, 15 Mar 2007 05:21:08 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2030283</guid><dc:creator>kevindente</dc:creator><slash:comments>34</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/kdente/rsscomments.aspx?PostID=2030283</wfw:commentRss><comments>http://weblogs.asp.net/kdente/archive/2007/03/14/vmware-on-vista-lameness.aspx#comments</comments><description>&lt;p&gt;Am I the only one majorly annoyed by VMWare's support policy (or lack there-of) for VMWare on a Vista host? Apparently EMC's stance is that in order to run VMWare on a Vista host, we need to wait for VMWare 6.0. This presents several problems:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;VMWare 6.0 is only in it's first beta. VMWare major release cycles are not typically short. They're usually a least a couple betas and one or two release candidates. That means we'll be waiting a while.&lt;/li&gt; &lt;li&gt;VMWare betas contain instrumentation that slow down their performance. &lt;/li&gt; &lt;li&gt;New VMWare versions come with updated VMWare Tools that aren't generally backward compatible with older versions. That makes interoperability with users of pre-6.x versions problematic.&lt;/li&gt; &lt;li&gt;Major VMWare upgrades usually cost. &lt;/li&gt; &lt;li&gt;VMWare 6.0 beta is...well...beta. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I've been a big fan of VMWare for a long time. It's a much more capable virtualization product than Virtual PC. I'd much rather use VMWare, even if it costs money and VPC is free. But they're not giving me a lot of outs here.&lt;/p&gt; &lt;p&gt;What's frustrating about the situation is that VMWare 5.5.3 &lt;em&gt;almost&lt;/em&gt; works on a Vista host. The first time I start a VM after booting the host, my machine essentially locks up for 3-5 minutes while VMWare sucks up every resource the system has. But eventually it comes back to life and the VM works fine. And any VMs started after that work fine too - until I reboot my machine. Weird...but it seems like a problem that should be addressable in a 5.5.4 release (not that I know diddly about writing a virtualization product ;). I'm not asking for Vista guests, glass in a VM, or even UAC compatibility. Just the basics - don't lock up my machine when I run a VM.&lt;/p&gt; &lt;p&gt;I look forward to the super-cool features of VMWare 6.0 - I just can't be without a reliable virtualization product until then.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2030283" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/kdente/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item></channel></rss>