<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-22120968</id><updated>2012-02-10T19:08:13.972-05:00</updated><category term='recruiting'/><category term='registry'/><category term='fonts'/><category term='video card'/><category term='ccc'/><category term='rock band'/><category term='windows media center'/><category term='investigation'/><category term='visual sourcesafe'/><category term='windows 7'/><category term='c#'/><category term='htpc'/><category term='firefox'/><category term='troubleshooting'/><category term='windows search'/><category term='css'/><category term='ati'/><category term='tips'/><category term='spring'/><category term='rss'/><category term='notepad'/><category term='video'/><category term='email'/><category term='.net'/><category term='eclipse'/><category term='tv'/><category term='maintainability'/><category term='c++'/><category term='jax-ws'/><category term='future'/><category term='xml'/><category term='iis'/><category term='diy'/><category term='BoundsTest'/><category term='msoffice'/><category term='java'/><category term='authentication'/><category term='pdf'/><category term='oracle'/><category term='visual studio'/><category term='pocket pc'/><category term='thinkpad'/><category term='struts'/><category term='intel'/><category term='drm'/><category term='cmd.exe'/><category term='html'/><category term='weblogic'/><category term='testing'/><category term='vista'/><category term='google'/><category term='cellular phone'/><category term='internet service'/><category term='javascript'/><category term='debugging'/><category term='ebay'/><category term='april 1'/><category term='AJAX'/><category term='pathfind'/><category term='cxf'/><category term='conference'/><category term='hp-ux'/><category term='overheat'/><category term='excel'/><category term='Windows Forms hosted in IE'/><category term='skinning'/><category term='windows'/><category term='podcasts'/><category term='productivity'/><category term='usability'/><category term='confluence'/><category term='hardware'/><category term='linksys BEFW11S4'/><category term='linux'/><category term='htpc-build-2010'/><category term='vba'/><category term='windows media player'/><category term='netiquette'/><category term='character encoding'/><category term='culture'/><category term='foxit'/><category term='wii'/><category term='games'/><category term='COM'/><category term='live writer'/><category term='new PC build'/><category term='delicious.com'/><category term='web services'/><category term='ie'/><category term='groupwise'/><category term='bluetooth'/><category term='sql'/><category term='ipod'/><category term='languages'/><category term='jboss'/><category term='search'/><category term='household'/><category term='clipboard'/><category term='management'/><category term='utilities'/><category term='zip'/><title type='text'>Jon Schneider's Tech Blog</title><subtitle type='html'>Press the Any key to continue!  (Software development and technology)</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default?start-index=101&amp;max-results=100'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>175</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-22120968.post-4008140096028387255</id><published>2012-02-03T12:44:00.001-05:00</published><updated>2012-02-03T12:44:47.484-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='video card'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='tv'/><title type='text'>Possible Fix: On boot, blank screen after Windows 7 logo</title><content type='html'>&lt;p&gt;This past week, &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html"&gt;my HTPC&lt;/a&gt; spontaneously started having a problem where, when booting, after the Windows logo was displayed, I would just get a blank (black) screen.&amp;#160; Windows apparently loaded ok – I just couldn’t see anything the screen.&amp;#160; One afternoon, things were working fine, but later that evening (not having manually made any changes to the PC), the problem started occurring.&lt;/p&gt;  &lt;p&gt;In an attempt to keep this post brief, I’m going to omit the myriad of troubleshooting steps that I went through to try to correct this, and just provide the one that worked for me. If you’re having a similar issue, you can skip to the end of this post for my solution, although I’d suggest at least skimming the System Configuration and Symptoms to get a better idea of whether or not this solution might be applicable for your situation as well.&lt;/p&gt;  &lt;h3&gt;System Configuration&lt;/h3&gt;  &lt;p&gt;This problem occurred on a PC running Windows 7 Home Premium 64-bit, with an nVidia GeForce GT 430 video card, connected via HDMI cable to a &lt;a href="http://www.amazon.com/L40FHDF12TA-40-Inch-1080p-2-Year-Warranty/dp/B004UETB20?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B004UETB20"&gt;TCL L40FHDF12TA LCD HDTV&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Prior to the problem occurring, the PC was successfully sending both video and sound to the HDTV via an HMDI cable, connected to the HDMI-out on the video card, and one of the HDMI-in ports on the TV, at the TV’s native resolution of 1920x1080 (1080p).&lt;/p&gt;  &lt;h3&gt;Symptoms&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;Upon a reboot, the PC would correctly display the text-mode POST information, followed by the graphical Windows 7 logo; but after that, the TV would just display a blank (black) screen.&amp;#160; The TV would report it was getting a 1280x720 signal from the PC. Also, the normal Windows boot sound did not play (even though I did have the volume up on the TV).&lt;/li&gt;    &lt;li&gt;The problem would persist even after turning the TV off and back on, or changing channels on the PC and then changing back to the “HDMI 1” input, or when disconnecting and reconnecting the HDMI cable (without rebooting).&lt;/li&gt;    &lt;li&gt;When booting into &lt;a href="http://www.computerhope.com/issues/chsafe.htm"&gt;Safe Mode&lt;/a&gt;, the Windows desktop &lt;em&gt;would&lt;/em&gt; display properly, and the system would be usable (albeit without sound, and at a reduced screen resolution).&amp;#160; &lt;/li&gt;    &lt;li&gt;At one point midway though the troubleshooting process, I got things “partially fixed” such that the Windows desktop would come up when booting normally (not into Safe Mode).&amp;#160; (Unfortunately, I don’t recall exactly which specific troubleshooting step I took over the course of the multi-hour troubleshooting process to make this happen.)&amp;#160; When in the system was in this state, I observed multiple problems:&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;In the Screen Resolution dialog, Windows would only let me let me set the monitor to a maximum resolution of 1280x720 – not the full resolution of 1920x1080 supported by the TV.&lt;/li&gt;      &lt;li&gt;Windows recognized the monitor as a “Generic non-PNP monitor”, not as the actual TCL TV model.&lt;/li&gt;      &lt;li&gt;No sounds would play. In the Sound dialog (accessed from the Control Panel), there was an nVidia HDMI sound output listed, but it had a listed status of “Not plugged in” (even though the HDMI cable actually was plugged in).&lt;/li&gt;      &lt;li&gt;The nVidia Control Panel software showed that the monitor was connected via DVI – not via HDMI as it actually was connected.&amp;#160; The software didn’t display a dropdown that would allow the connection type to be changed.&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;The same symptoms persisted when connecting the PC to the TV via the video card’s DVI-out port, the TV’s HDMI-in, and a DVI-HDMI adapter (and rebooting).&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Solution&lt;/h3&gt;  &lt;p&gt;After trying many things to fix this, what eventually ended up working for me to fix the problem was to &lt;strong&gt;use Windows 7 System Restore to restore the system to a restore point a couple of weeks before the problem started happening&lt;/strong&gt;.&amp;#160; Once this was done, all symptoms immediately went away; the TV once again successfully sent video and sound to the TV, Windows recognized the monitor as a TCL TV (not as a “generic non-PNP monitor”), and Windows allowed me to change the screen resolution to the TV’s native resolution of 1920x1080.&lt;/p&gt;  &lt;p&gt;I’m still somewhat mystified as to the initial root cause of the problem; my best guess is that some Windows system file related to display output was (somehow) damaged, and that this was corrected by the System Restore.&amp;#160; The only thing listed on the System Restore dialog between the present time and the restore point that I selected (other than several manual video driver updates that I had applied during the troubleshooting process) was a series of automatically installed Windows Critical Updates.&amp;#160; &lt;/p&gt;  &lt;p&gt;(The problem apparently wasn’t with one of the nVidia video driver files, as I tried installing multiple different versions of the display driver software to correct the problem, without success.&amp;#160; I even went so far as to use a “driver cleaner” utility to clean out all of the old nVidia files and registry entries before re-installing a new driver.)&lt;/p&gt;  &lt;p&gt;If you’re having the same problem that I was, this solution may or may not work for you.&amp;#160; Still, it may be worth trying a System Restore as part of your troubleshooting process if other more obvious solutions (checking cables, reinstalling the video driver, etc.) aren’t working for you.&amp;#160; I hope this helps!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4008140096028387255?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4008140096028387255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2012/02/possible-fix-on-boot-blank-screen-after.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4008140096028387255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4008140096028387255'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2012/02/possible-fix-on-boot-blank-screen-after.html' title='Possible Fix: On boot, blank screen after Windows 7 logo'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3081955790500596022</id><published>2012-02-01T17:10:00.001-05:00</published><updated>2012-02-01T17:10:34.429-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><title type='text'>How to configure Windows 7 to natively launch applications via custom keyword shortcuts</title><content type='html'>&lt;p&gt;This article describes a way to configure Windows 7 to launch applications and websites from the “Search programs and files” field in the Windows 7 Start menu using custom-defined shortcut keywords – without using the mouse at all.&amp;#160; This is similar to the functionality of 3rd-party utilities such as &lt;a href="http://www.bayden.com/SlickRun/"&gt;Slickrun&lt;/a&gt;, &lt;a href="http://www.launchy.net/"&gt;Launchy&lt;/a&gt;, and &lt;a href="http://qsapp.com/"&gt;Quicksilver&lt;/a&gt;, but with this method, no 3rd-party software is required!&lt;/p&gt;  &lt;p&gt;As an example, this technique could be used to set up the keyword “ff” as a shortcut for launching the Firefox browser.&amp;#160; You would be able to launch Firefox from anywhere in Windows simply by typing the following four keystrokes:&lt;/p&gt;  &lt;p&gt;[Windows Key]    &lt;br /&gt;ff     &lt;br /&gt;[Enter]&lt;/p&gt;  &lt;p&gt;Doing this would bring up the Windows start menu and enter “ff” into the “Search programs and files” field; after having followed the steps detailed in the remainder of this post, Windows will recognize “ff” as a “Program”, and therefore will give it the focus automatically; you can then just press Enter to launch “ff”, which is configured as a shortcut for launching Firefox.&amp;#160; This is shown in the highlighted portions of this screen capture of the Windows 7 Start menu:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/How-to-configure-Windows-7_AD4A/ff_shortcut_highlighted.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="ff_shortcut_highlighted" border="0" alt="ff_shortcut_highlighted" src="http://jonschneider.com/images/jsblog/How-to-configure-Windows-7_AD4A/ff_shortcut_highlighted_thumb.png" width="412" height="542" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 1. Create a “Shortcuts” folder&lt;/h3&gt;  &lt;p&gt;Create a new folder named &lt;font face="Consolas"&gt;Shortcuts&lt;/font&gt; at location:&lt;/p&gt;  &lt;p&gt;&lt;font face="Consolas"&gt;%appdata%\Roaming\Microsoft\Windows\Start Menu\Programs\&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;The folder doesn’t have to be named &lt;font face="Consolas"&gt;Shortcuts&lt;/font&gt;; you can use something else if you like.&amp;#160; &lt;/p&gt;  &lt;p&gt;Note that because this folder is created under the &lt;font face="Consolas"&gt;Start Menu\Programs&lt;/font&gt; folder, this new folder and its contents will show up as a folder on your Start menu.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;em&gt;Why does the folder need to be created at this location?&lt;/em&gt;&amp;#160; This needs to be done so that Windows will recognize shortcut files placed in that folder as “Programs” when the shortcut filename is keyed in to the “Search programs and files” field on the Start menu.&lt;/p&gt;  &lt;h3&gt;Step 2. Create a shortcut to the new Shortcuts folder&lt;/h3&gt;  &lt;p&gt;&lt;em&gt;This step is optional&lt;/em&gt;, but to make things easier, I suggest that the first new shortcut you create is a shortcut to bring up the Shortcuts folder itself in a new Windows Explorer window.&amp;#160; &lt;/p&gt;  &lt;p&gt;One way to do this is to manually open up an Explorer window (Shortcut key: [Windows Key] + e) and enter in that window’s address bar:&lt;/p&gt;  &lt;p&gt;&lt;font face="Consolas"&gt;%appdata%\Roaming\Microsoft\Windows\Start Menu\Programs\Shortcuts&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Then, drag the yellow folder icon from the left side of the address bar into the main area of the window to create a shortcut to that folder.&amp;#160; &lt;/p&gt;  &lt;p&gt;Finally, rename the shortcut (Shortcut key: [F2]) from &lt;font face="Consolas"&gt;Shortcuts – Shortcut&lt;/font&gt; to just &lt;font face="Consolas"&gt;shortcuts&lt;/font&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;Once this is done, you can test the new shortcut by pressing [Windows Key] to open up the Start menu, typing in “shortcuts”, and pressing [Enter].&amp;#160; A new Windows Explorer window should open, showing the Shortcuts folder.&lt;/p&gt;  &lt;h3&gt;Step 3. Create Application Shortcuts&lt;/h3&gt;  &lt;p&gt;Now you’re ready to create some shortcuts to run applications!&amp;#160; To create a named shortcut to launch a particular application, just create a shortcut to that application in the Shortcuts folder you created, and name the shortcut file to whatever you want the keyword to launch the application to be.&amp;#160; Then, to test the shortcut, press [Windows Key], key in the shortcut name, and press [Enter].&amp;#160; &lt;/p&gt;  &lt;p&gt;One easy way to create a shortcut to a particular program is to use the &lt;em&gt;right&lt;/em&gt; mouse button to drag and drop that program’s entry from the Start menu to a Windows Explorer window that’s open to the Shortcuts folder.&amp;#160; After dropping the item, select “Create Shortcuts Here” from the context menu that appears.&lt;/p&gt;  &lt;p&gt;After keying in the shortcut name (and before pressing enter), you should see your custom shortcut appear immediately as the first item in the list of real-time search results that Windows generates under the “Programs” heading.&amp;#160; Since Windows considers the shortcut to be a “Program,” pressing enter causes Windows to run that program without you even needing to arrow key down to that search result in the Start menu – Windows selects it for you by default.&amp;#160; Nice!&lt;/p&gt;  &lt;p&gt;One caveat: For me, for certain single-character shortcuts (such as “g”, but not “n”), Windows doesn’t recognize the shortcut file as a “Program” in the start menu. If a given single-character shortcut doesn’t work for you, I’d suggest trying a two (or more) character shortcut keyword instead; all two-or-more-character shortcut keywords that I’ve tried have worked for me.&lt;/p&gt;  &lt;p&gt;To give you some ideas on getting started with creating your own shortcuts, here are just a few of the shortcuts that I currently have set up on my local PC:&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="287"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;ecl&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;Eclipse IDE&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;ff&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;Firefox&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;irfan&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;&lt;a href="http://www.irfanview.com/"&gt;IrfanView&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;n2&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;&lt;a href="http://www.flos-freeware.ch/notepad2.html"&gt;Notepad2&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;pdn&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;&lt;a href="http://www.getpaint.net/"&gt;Paint.NET&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;timer&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;&lt;a href="http://www.orzeszek.org/dev/timer/"&gt;Orzeszek Timer&lt;/a&gt; &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;vs&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;Visual Studio IDE&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="88"&gt;&lt;font face="Consolas"&gt;wmp&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="197"&gt;Windows Media Player&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;These shortcuts even work with parameters, for example, with my configured “timer” shortcut, I can key in “timer 5m” to start Orzeszek Timer running with a 5-minute timer.&lt;/p&gt;  &lt;h3&gt;Step 4. Create Website Shortcuts&lt;/h3&gt;  &lt;p&gt;You can also set up shortcuts to launch a particular website in your default web browser.&amp;#160; To do this, just create a new shortcut from Windows Explorer in your Shortcuts folder (right-click | New | Shortcut), and in the item location field, paste the URL of the target website (such as “http://blog.jonschneider.com”, without the quotes).&amp;#160; Then, name the new shortcut with the keyword you’d like to type to launch that website, and that’s it! &lt;/p&gt;  &lt;h3&gt;Open Question: Websites with Parameters&lt;/h3&gt;  &lt;p&gt;One thing I have not yet figured out how to do using this technique is to elegantly set up a shortcut to launch a website with a particular parameter.&amp;#160;&amp;#160; For example, I’d like to be able to key in “g &lt;em&gt;search terms&lt;/em&gt;” to bring up Google in a new tab and the default browser, and run a search for &lt;em&gt;search terms&lt;/em&gt;.&amp;#160; That is, a new browser tab would be opened with the url &lt;a title="https://www.google.com/search?q=search%20term&amp;amp;safe=active" href="http://www.google.com/search?q=search term"&gt;http://www.google.com/search?q=search term&lt;/a&gt;.&amp;#160; If anyone knows of an elegant way to do this (without resorting to the use of a 3rd-party background program like &lt;a href="http://www.bayden.com/SlickRun/"&gt;Slickrun&lt;/a&gt;), please leave a comment and let me know!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3081955790500596022?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3081955790500596022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2012/02/how-to-configure-windows-7-to-natively.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3081955790500596022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3081955790500596022'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2012/02/how-to-configure-windows-7-to-natively.html' title='How to configure Windows 7 to natively launch applications via custom keyword shortcuts'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7380738885379165464</id><published>2012-01-02T12:39:00.001-05:00</published><updated>2012-01-02T13:14:05.324-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='windows media center'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='tv'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><title type='text'>HTPC: Displaying the Windows Media Center actively recording program on an LCD Display</title><content type='html'>&lt;p&gt;A project that I took on over this past Christmas break was to get &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html"&gt;my HTPC&lt;/a&gt; to display on an LCD display mounted in the PC’s case informaton about the TV program actively being recorded by the Windows Media Center DVR, so that I could see what was being recorded even when the attached TV was off.&lt;/p&gt;  &lt;p&gt;The basic hardware/software setup for this project was:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;LCD Display: An &lt;a href="http://www.nmediapc.com/prolcd.htm"&gt;nMediaPC PRO-LCD-B display&lt;/a&gt;, which is a blue LCD display that can display 2 rows of 20 characters, and fits into a standard PC case 5 1/4” drive bay.&amp;#160; &lt;/li&gt;    &lt;li&gt;A PC running Windows 7 64-bit, configured to act as a DVR using &lt;a href="http://windows.microsoft.com/en-US/windows/help/windows-media-center"&gt;Windows Media Center&lt;/a&gt;.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This project turned out to be significantly more complex that I originally planned on it being, although after nearly a full day of tinkering, I did finally get it to work!&amp;#160; The remainder of this post is a set of instructions for what I did to get the LCD display working to display the active Windows Media Center recording (leaving out many of the missteps and dead ends I encountered along the way, although I do include a couple of the major ones as an appendix at the end of this post).&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/ec3362b5bdf6_93E1/WorksOnMyMachine_3.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="WorksOnMyMachine" border="0" alt="WorksOnMyMachine" align="right" src="http://jonschneider.com/images/jsblog/ec3362b5bdf6_93E1/WorksOnMyMachine_thumb_3.png" width="192" height="189" /&gt;&lt;/a&gt;I’m providing this information for my own future reference and in the hopes that it may be helpful to you, the reader; however, please note that this is in no way an “official” set of instructions.&amp;#160; It worked for me, but may not work for you.&amp;#160; Your mileage may vary.&amp;#160; I am awarding this post the official Jeff Atwood / Jon Galloway &lt;a href="http://www.codinghorror.com/blog/2007/03/the-works-on-my-machine-certification-program.html"&gt;“It works on my machine!”&lt;/a&gt; seal of approval.&amp;#160; &lt;/p&gt;  &lt;p&gt;These instructions assume that you already have Windows Media Center actively running as a DVR on your PC, and that you have a reasonable level of technical expertise, and patience – there are a lot of steps here, and quite a few “moving parts” to get working together!&lt;/p&gt;  &lt;p&gt;Enough disclaimers; on with the show!&lt;/p&gt;  &lt;h4&gt;1. Purchase the nMedia PRO-LCD-B LCD Display&lt;/h4&gt;  &lt;p&gt;Purchase the nMediaPC PRO-LCD-B.&amp;#160; As I write this post, it’s &lt;a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16811996004"&gt;available from newegg.com&lt;/a&gt; for US $38 shipped.&lt;/p&gt;  &lt;p&gt;Other nmMdiaPC PRO-LCD models may work with these instructions as well, but I only tried them with the PRO-LCD-B.&lt;/p&gt;  &lt;h4&gt;2. Install the PRO-LCD-B hardware&lt;/h4&gt;  &lt;p&gt;Power off your PC, and install the PRO-LCD-B in an empty 5 1/4” drive bay.&amp;#160; &lt;/p&gt;  &lt;p&gt;The install was fairly easy; the PRO-LCD-B has two connections: One to a standard disk drive power cable from the PC’s internal power supply, and one to a 4-pin USB connection on the motherboard.&amp;#160; My HTPC’s motherboard (a &lt;a href="http://www.amazon.com/Gigabyte-GA-MA785GM-US2H-Micro-ATX-Motherboard/dp/B002HJ2CA8/ref=sr_1_1?ie=UTF8&amp;amp;s=electronics&amp;amp;qid=1274586155&amp;amp;sr=8-1"&gt;Gigabyte AMD GA-MA785GM-US2H&lt;/a&gt;) had several such 4-pin USB leads available on the motherboard, even with all of my case’s front and rear USB ports already hooked up.&lt;/p&gt;  &lt;p&gt;(When I powered my PC back on, I *think* I saw some stock/default text on the LCD display, but I’m not 100% sure about this – and I’m not about to voluntarily revert my HTPC to that state at this point just to double-check.) :-)&lt;/p&gt;  &lt;h4&gt;3. Install the PRO-LCD-B driver software&lt;/h4&gt;  &lt;p&gt;Download and install the PRO-LCD-B driver software from the nMediaPC website:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.nmediapc.com/LCD/download.htm" href="http://www.nmediapc.com/LCD/download.htm"&gt;http://www.nmediapc.com/LCD/download.htm&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I also have a mirrored copy (current as of January 2012) in the event that the file ever becomes unavailable from the nMediaPC site:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/jsblog/CDM20600.zip"&gt;http://jonschneider.com/jsblog/CDM20600.zip&lt;/a&gt; (1.8 MB)&lt;/p&gt;  &lt;p&gt;(Although at this point my next step at this point was to install nMediaPC’s “M-Play Home Center (MHC)” software to drive the LCD display, this turned out to be a dead end, and I recommend you skip it if your goal is to get your LCD display to show the actively-recording Windows Media Center program.&amp;#160; See the “Dead Ends” appendix at the end of this post for more on this.)&lt;/p&gt;  &lt;h4&gt;4. Install LCDSmartie &lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lcdsmartie.sourceforge.net/"&gt;LCDSmartie&lt;/a&gt; is a free open-source program for Windows that can drive the display of text on LCD display devices, including the PRO-LCD-B.&lt;/p&gt;  &lt;p&gt;I downloaded and installed the 5.4.2.92 beta release (dated June 8, 2011).&amp;#160; LCDSmartie downloads are available from here:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://lcdsmartie.sourceforge.net/smartied.htm" href="http://lcdsmartie.sourceforge.net/smartied.htm"&gt;http://lcdsmartie.sourceforge.net/smartied.htm&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I mirrored the 5.4.2.92 beta release here:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/jsblog/lcd_smartie_v5.4.2.92%20Beta.zip"&gt;http://jonschneider.com/jsblog/lcd_smartie_v5.4.2.92 Beta.zip&lt;/a&gt; (2 MB)&lt;/p&gt;  &lt;p&gt;Uncompress the “lcd_smartie_v5.4.2.92 Beta” folder and its contents from that .zip archive.&amp;#160; I put this folder onto the root directory of my C: drive.&lt;/p&gt;  &lt;h4&gt;5. Install the lisvfd.dll display driver for LCDSmartie&lt;/h4&gt;  &lt;p&gt;None of the out-of-the-box drivers that come with the LCDSmartie 5.4.2.92 release work with the PRO-LCD-B.&amp;#160; However, there is another driver available on the LCDSmartie site that did work for me: the “L.I.S VFD” display driver.&lt;/p&gt;  &lt;p&gt;It’s available on the LCDSmartie SourceForce site from here:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://downloads.sourceforge.net/lcdsmartie/lisvfd.zip?download" href="http://downloads.sourceforge.net/lcdsmartie/lisvfd.zip?download"&gt;http://downloads.sourceforge.net/lcdsmartie/lisvfd.zip?download&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If that link doesn’t work anymore, try looking for it on the &lt;a href="http://lcdsmartie.sourceforge.net/"&gt;LCDSmartie site&lt;/a&gt; download page under “Plugins”, or else download my mirrored copy:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/jsblog/lisvfd.zip"&gt;http://jonschneider.com/jsblog/lisvfd.zip&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After downloading that, place the lisvfd.dll file from the .zip archive into the “displays” folder under your LCDSmartie installation folder.&lt;/p&gt;  &lt;h4&gt;6. Configure the lisvfd.dll display driver in LCDSmartie&lt;/h4&gt;  &lt;p&gt;Run LCDSmartie (via the LCDSmartie.exe file in the extracted “lcd_smartie_v5.4.2.92 Beta” folder that you created in step 4 above).&lt;/p&gt;  &lt;p&gt;When LCDSmartie comes up, it should show a small window showing the content that it is sending to the LCD display (although nothing will actually appear on the PRO-LCD-B until the steps in this section are completed).&amp;#160; Click the “Setup” button in the lower-left corner of the window to bring up the Setup window.&lt;/p&gt;  &lt;p&gt;In the LCDSmartie setup window, in the “LCD Size” dropdown in the Display Size section in the top-right corner, select the “2x20” value (the display size of the PRO-LCD-B).&lt;/p&gt;  &lt;p&gt;Next, still in the Display Size section, click the Plugin tab.&amp;#160; In the Display Plugin dropdown, select lisvfd.dll.&amp;#160; (This option will only appear if you copied the lisvfd.dll file into the LCDSmartie “displays” subfolder in the previous step.)&lt;/p&gt;  &lt;p&gt;For the next step, you need to know what COM port your PRO-LCD-B is running on.&amp;#160; To determine this:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Bring up the Windows 7 “Devices and Printers” screen by opening the Windows Start menu, typing “devices” into the text field, and selecting the “Devices and Printers” option that appears. &lt;/li&gt;    &lt;li&gt;On the “Devices and Printers” screen, in the “Unspecified” section, look for a device named “FT232R USB UART”.&amp;#160; Right-click on it and select Properties from the context menu. &lt;/li&gt;    &lt;li&gt;On the Properties window, select the Hardware tab. &lt;/li&gt;    &lt;li&gt;In the “Device Functions” table that appears, look for an entry like “USB Serial Port (COM4)”, where the “4” might be any number.&amp;#160; Make a note of that number. &lt;/li&gt;    &lt;li&gt;Close the FT232R properties window and the “Devices and Printers” window. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Then, return to LCDSmartie.&amp;#160; (It doesn’t appear in the Alt+Tab list on my machine, so you may need to select it from the Windows taskbar).&amp;#160; In the LCDSmartie Setup dialog, in the Display Settings section, in the Plugin tab, in the Startup Parameters field, enter “COM4,38400” where “COM4” is the actual COM port value from the Devices and Printers section above.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;If for whatever reason you couldn’t find the FT232R device in “Devices and Printers”, then an alternative here might just be to try entering different values for the COM port number in this field to see if you can get something to display on the PRO-LCD-B screen. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Once this is done, click OK on the LCDSmartie setup dialog.&amp;#160; You should now see some text from LCDSmartie (a scrolling LCDSmartie logo, and possibly some other information) appear on the PRO-LCD-B screen on your PC!&lt;/p&gt;  &lt;h4&gt;7. Install the “LCDSmartie dll to display Windows Media Center status”&lt;/h4&gt;  &lt;p&gt;Once LCDSmartie is successfully configured to display information on the PRO-LCD-B screen, the next step is to get it to display what’s currently recording in Windows Media Center.&amp;#160; A plug-in called “LCDSmartie dll to display Windows Media Center status” by Dave Perrow can be used to do this.&lt;/p&gt;  &lt;p&gt;Download the “LCDSmartie dll to display Windows Media Center status” from its website, here:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://mcedll.codeplex.com/" href="http://mcedll.codeplex.com/"&gt;http://mcedll.codeplex.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Or grab my mirrored version (current as of January 2012):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/jsblog/MCE_DLL.zip"&gt;http://jonschneider.com/jsblog/MCE_DLL.zip&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Extract the MCE_dll.dll, MCE_dll.cfg, and MCE_dll.ini files to the “plugins” folder under your LCDSmartie installation.&lt;/p&gt;  &lt;h4&gt;8. Install Windows Media Center TCP/IP Controller&lt;/h4&gt;  &lt;p&gt;The MCE_dll plugin relies on another piece of open-source for Windows called Windows Media Center TCP/IP Controller (or “TcpIpController”) to function.&amp;#160; TcpIpController publishes a “feed” of what Windows Media Center is currently doing (including what program it’s recording) to a particular TCP port on your PC, where it can be read by MCE_dll.&lt;/p&gt;  &lt;p&gt;I installed the “Win7 64 and 32 bit Alpha - button command fix” release of TcpIpController.&amp;#160; (Note: This is &lt;em&gt;not &lt;/em&gt;the default release of TcpIpController – I’m not sure whether or not the default release works with MCE_dll.)&lt;/p&gt;  &lt;p&gt;Download the “Win7 64 and 32 bit Alpha - button command fix” release of TcpIpController from its codeplex.com website here:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://vmccontroller.codeplex.com/releases/view/23251" href="http://vmccontroller.codeplex.com/releases/view/23251"&gt;http://vmccontroller.codeplex.com/releases/view/23251&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Or get this version from my website:&lt;/p&gt;  &lt;p&gt;&lt;a href="https://jonschneider.com/jsblog/Setup%20x64.msi"&gt;https://jonschneider.com/jsblog/Setup%20x64.msi&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Run the downloaded .msi file, and continue through the prompts to complete the installation wizard.&lt;/p&gt;  &lt;p&gt;When the installation finishes, &lt;em&gt;reboot &lt;/em&gt;– without a reboot, TcpIpController will not work properly.&lt;/p&gt;  &lt;h4&gt;9. Configure TV channel names&lt;/h4&gt;  &lt;p&gt;The MCE_dll plugin will display the name of the channel being recorded, along with the channel number and the name of the program being recorded.&amp;#160; It gets the channel number and program name from Windows Media Center (via the TcpIpStatus plugin), but we need to manually supply the channel names.&lt;/p&gt;  &lt;p&gt;To do this, in a text editor, open the MCE_dll.ini file that you previously placed in the “plugins” folder under the LCDSmartie folder, and replace all of the values with the channel numbers and names for your local channels. &lt;/p&gt;  &lt;p&gt;(You can skip this step if you happen to live in the same region of Scotland as the MCE_dll author.) :-)&lt;/p&gt;  &lt;h4&gt;10. Configure LCDSmartie to use the Windows Media Center status (MCE_dll) plugin&lt;/h4&gt;  &lt;p&gt;Now that we have the MCE_dll plugin and its TcpIpController dependency in place, we need to configure LCDSmartie to use them.&lt;/p&gt;  &lt;p&gt;Bring up the LCDSmartie Setup dialog.&amp;#160; In the “Screens settings” section, make sure Screen 1 is selected (set the value of the Screen field to 1), and then replace the values in the two large fields in this section (which represent what LCDSmartie will display on the PRO-LCD-B screen):&lt;/p&gt;  &lt;p&gt;Line 1:&amp;#160; &lt;/p&gt;  &lt;p&gt;$dll(MCE_dll.dll,1,,) &lt;/p&gt;  &lt;p&gt;Line 2:&lt;/p&gt;  &lt;p&gt;$dll(MCE_dll.dll,2,,) &lt;/p&gt;  &lt;p&gt;An explanation of what these values mean, along with some other values you can play with, can be found on the &lt;a href="http://mcedll.codeplex.com/"&gt;MCD_dll plugin site&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Finally, click OK.&amp;#160; If your Windows Media Center is actively recording something, you should now see the channel number, channel name, and show name on the PRO-LCD-B display!&lt;/p&gt;  &lt;p&gt;The finished product on my HTPC (with the PRO-LCD-B installed just below the DVD drive):&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="PRO-LCD-B" border="0" alt="PRO-LCD-B" src="http://jonschneider.com/images/jsblog/ec3362b5bdf6_93E1/PRO-LCD-B.jpg" width="404" height="212" /&gt;&lt;/p&gt;  &lt;p&gt;(The actual LCD display image is far cleaner/sharper than it appears in the photo; my iPod camera refused to take a nice image of it.)&lt;/p&gt;  &lt;h4&gt;11. Configure LCDSmartie to run at Windows startup&lt;/h4&gt;  &lt;p&gt;In the LCDSmartie setup dialog, in the Startup/Shutdown tab, click the “Autostart hidden” radio button, then click OK.&lt;/p&gt;  &lt;h4&gt;Appendix: Dead ends&lt;/h4&gt;  &lt;p&gt;A couple of the things that I tried that didn’t work:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A piece of open-source software for Windows called &lt;a href="http://babgvant.com/files/folders/lcdwriter/default.aspx"&gt;LCDWriter&lt;/a&gt; by “andy vt” says that it will also get an LCD display to display what Windows Media Center is currently recording, among several other functions.&amp;#160; However, I couldn’t get the 64-bit version to successfully display anything to my PRO-LCD-B; and the 32-bit version (which can work with LCDSmartie display plugins via a wrapper dll) gave me a runtime error on my PC every time I tried to run it, so I eventually gave up on getting it to work on my PC. &lt;/li&gt;    &lt;li&gt;The default PRO-LCD-B display software from nMedia has a lot of cool functions, and it was very easy to install and get initially working, but I was unable to successfully get it to display the recording program in Windows Media Center.&amp;#160; It also seemed to be slightly buggy in other ways (at least for me); for example, after exiting Windows Media Center, the PRO-LCD-B would continue to display “Channel Listing”, for example, instead of reverting back to the default date/time display. &lt;/li&gt; &lt;/ul&gt;        &lt;h4&gt;Appendix: Thanks!&lt;/h4&gt;  &lt;p&gt;Thanks to the authors of LCDSmartie, the lisvfd.dll display driver, the “Windows Media Center status” plugin for LCDSmartie, and the Windows Media Center TCP/IP Controller.&amp;#160; Without all of those open source projects having been developed and made freely available, I wouldn’t have been able to complete this project – or at least, it would have taken me significantly longer to code up a solution myself!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7380738885379165464?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7380738885379165464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2012/01/htpc-displaying-windows-media-center.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7380738885379165464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7380738885379165464'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2012/01/htpc-displaying-windows-media-center.html' title='HTPC: Displaying the Windows Media Center actively recording program on an LCD Display'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5739136857498531609</id><published>2011-08-31T01:04:00.001-04:00</published><updated>2011-08-31T01:06:16.542-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='video card'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='overheat'/><category scheme='http://www.blogger.com/atom/ns#' term='investigation'/><title type='text'>Blank screen after Windows logo: Apparent broken video card</title><content type='html'>&lt;p&gt;I got a call from my wife while I was at work yesterday: There was a problem with our primary home PC, which runs Windows 7.&amp;#160; As the machine was booting, after the BIOS data appeared followed by the graphical Windows 7 “loading” logo on the primary monitor, the primary monitor went into sleep mode (as though it had been unplugged from the PC).&amp;#160; By moving the mouse around, the mouse cursor was visible on the secondary monitor, but clicking it (including right-click) didn't do anything.&lt;/p&gt;  &lt;p&gt;Getting home, I saw the problem for myself.&amp;#160; I concluded that the Windows logon screen was being displayed on the primary monitor -- I just couldn't see it because the primary monitor was off.&amp;#160; I was able to log onto the machine blind (by arrowing over to my user profile, hitting Enter to activate it, keying in my password, and hitting enter again to log in).&amp;#160; Once in to Windows, I was able to make my secondary monitor become the primary monitor, via right-click on the desktop, selecting Screen Resolution from the Right-click menu, &lt;a href="http://blog.jonschneider.com/2008/04/rescuing-off-screen-window.html"&gt;“rescuing” the Screen Resolution window from the sleeping primary monitor onto the secondary monitor&lt;/a&gt; to make it visible, then checking the “Make this my main display” checkbox on the secondary monitor.&lt;/p&gt;  &lt;p&gt;I spent pretty much the entire evening troubleshooting the problem.&amp;#160; Here the long list of troubleshooting steps I tried:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Verify both ends of the monitor cable were firmly seated&lt;/strong&gt;: It was seated properly.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Cold reboot&lt;/strong&gt;: No change in behavior.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Install the latest video driver &lt;/strong&gt;(for the video card, an NVidia Geforce 6800 GT): No change in behavior.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Install the latest monitor driver &lt;/strong&gt;(for the primary monitor, a ViewSonic VX2035wm connected via DVI): No change in behavior.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Uninstall the monitor drivers &lt;/strong&gt;(and let Windows reinstall them after rebooting): No change in behavior.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Uninstall &lt;/strong&gt;&lt;a href="http://www.microsoft.com/en-us/security_essentials/default.aspx"&gt;&lt;strong&gt;Microsoft Security Essentials&lt;/strong&gt;&lt;/a&gt; (which I had just recently installed) (on the theory that MSE could somehow be seeing the ViewSonic monitor driver as malware): No change in behavior.&amp;#160; (I reinstalled MSE again afterwards.)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Restore the system to a restore point from a few days prior&lt;/strong&gt; (when I know the monitor had been working fine): No change in behavior.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Reboot into Windows Safe Mode:&lt;/strong&gt; This actually did get the logon screen, and then the Windows desktop, to display properly on the primary monitor.&amp;#160; I was even able to increase the screen resolution from the safe mode default (1024x768, I think) back to the native resolution of 1680x1050.&amp;#160; I was not able to use dual-monitor display, though; the Screen Resolution dialog only detected the primary monitor while in Safe Mode.&amp;#160; Rebooting again (back into normal mode) brought me back to square one.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Uninstall the video driver (then reboot):&lt;/strong&gt; After rebooting, the behavior was similar to safe mode; the primary monitor worked, but not the secondary.&amp;#160; Upon reinstalling the NVidia video driver and rebooting once more, it was again back to square one.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Reseat the video card &lt;/strong&gt;(with the PC powered off, then boot back up): No change in behavior.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Unplug the secondary monitor (leaving only the primary monitor plugged in) (then reboot): &lt;/strong&gt;This didn’t help.&amp;#160; I still got, after rebooting, the BIOS information visible, the graphical Windows 7 logo visible, then blank screen / sleeping monitor.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Swap the ports that the two monitors’ DVI cables were plugged into, then reboot:&lt;/strong&gt; This actually caused me not to get anything display on either monitor.&amp;#160; I changed it back afterward.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Check BIOS settings:&lt;/strong&gt; I didn’t notice anything unusual, or any settings that I could change that might be likely to fix the problem.&amp;#160; I ended up leaving everything alone.&lt;/p&gt;  &lt;p&gt;Finally, after all that, I hit upon a good solution&lt;strong&gt;: &lt;em&gt;I replaced the video card&lt;/em&gt;.&lt;/strong&gt;&amp;#160; Specifically, (after powering both machines down and unplugging them, of course), I pulled the GeForce 6800 GT from my primary machine and set it aside; then, I pulled the GeForce GT 430 from my &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html"&gt;HTPC&lt;/a&gt; (leaving that PC with just the motherboard’s onboard audio/video), and installed that card in my primary PC; then I booted the primary PC back up.&amp;#160; After doing that, and letting Windows install the NVidia display driver, both monitors came up with no problem.&lt;/p&gt;  &lt;p&gt;So even though I had been pretty convinced initially that I was looking at a software problem, probably a driver problem of some kind (given that the primary monitor worked fine at boot time, and even displayed the graphical windows logo, and also worked fine in Safe Mode), the problem apparently was that my GeForce 6800 GT decided to (partially) fail on me.&amp;#160; It was actually my lovely wife that made the astute observation that the fact that I had been &lt;font style="background-color: #ffffff"&gt;&lt;/font&gt;&lt;font style="style"&gt;&lt;a href="http://blog.jonschneider.com/2011/06/fix-monitor-goes-black-and-system-hangs.html"&gt;fairly recently running that card at a scorching hot 100+ degrees C&lt;/a&gt;&lt;/font&gt;&lt;font style="background-color: #ffffff"&gt;&lt;/font&gt; probably hadn’t helped matters!&lt;/p&gt;  &lt;p&gt;Note that I don’t recommend that anyone else who encounters this issue (and comes across this blog post via a search) run out and spend $$$ to replace your video card as your first option.&amp;#160; In researching this issue online during the course of the troubleshooting, I did run across some reports from others of this same problem (screen goes blank after displaying the Windows logo during boot) who were able to solve their issue by doing one of the other steps that I tried, such as uninstalling and reinstalling video drivers.&lt;/p&gt;  &lt;p&gt;For the time being, I’m in good shape with my workaround.&amp;#160; The lower-end but newer GeForce GT 430 is actually almost as good a video card as the original 6800 GT; and the HTPC can play TV and movies fine with the onboard video.&amp;#160; I guess this gives me something to put on my birthday list for my birthday coming up later this year!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5739136857498531609?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5739136857498531609/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/08/blank-screen-after-windows-logo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5739136857498531609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5739136857498531609'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/08/blank-screen-after-windows-logo.html' title='Blank screen after Windows logo: Apparent broken video card'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-163509657694282233</id><published>2011-08-26T17:34:00.001-04:00</published><updated>2011-08-26T17:40:53.137-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='video card'/><category scheme='http://www.blogger.com/atom/ns#' term='investigation'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Firefox: The case of the corrupted cursor</title><content type='html'>&lt;p&gt;At work, I recently had the chance to upgrade to a new development laptop PC, a Thinkpad T520 running Windows 7.&amp;#160; The machine is excellent, with one weird exception: In Firefox (and only in Firefox), when keying in text into a text entry field in a web page or into the browser address bar, the &lt;a href="http://en.wikipedia.org/wiki/Cursor_%28computers%29"&gt;caret&lt;/a&gt; (i.e. the text entry cursor) would sometimes appear to be “distorted” or “corrupted” – that is, some “garbage” pixels would appear around the caret whenever I moved it (either by typing in a character, or by using the arrow keys).&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Problem Details&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The problem is hard to explain, so here’s a screen capture of a particularly severe example that occurred when I was entering text into a textarea.&amp;#160; The caret in this cropped screen shot is between the “2” and “5” in “8/25/2011”; note all the other weird stray black and white marks in the text.&amp;#160; (I added the red oval to the screen capture to show the area in which the “corruption” was appearing.&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="firefox caret garbage - crop" border="0" alt="firefox caret garbage - crop" src="http://jonschneider.com/images/jsblog/657d8a26d4fc_D3EF/firefox-caret-garbage---crop.png" width="105" height="281" /&gt;&lt;/p&gt;  &lt;p&gt;After waiting a little less than a second without moving the caret, the problem would go away – the “corruption” would disappear from the display.&amp;#160; However, the problem would come right back upon moving the caret again.&lt;/p&gt;  &lt;p&gt;The caret itself would also sometimes not appear until the “corruption” went away, which made text editing surprisingly difficult – a frustrating problem.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Investigation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The problem would only occur in Firefox, not in other browsers such as Internet Explorer 9, or in any other applications I tried (such as Eclipse, Word, and Notepad).&lt;/p&gt;  &lt;p&gt;Experimenting, I found that the problem would &lt;em&gt;not&lt;/em&gt; occur when Firefox was started in Safe Mode (via Firefox menu | Help menu | Restart with Add-ons Disabled).&amp;#160; However, I tried running Firefox in normal mode with all extensions and add-ons manually disabled, and that didn’t help.&amp;#160; I tried setting up a new Firefox user profile, and that didn’t help either.&lt;/p&gt;  &lt;p&gt;I also noticed that beyond the issues with the caret, the actual rendering/shape of letter character glyphs being typed into Firefox was affected.&amp;#160; The&amp;#160; characters themselves appeared “wrong” when Firefox was running in normal mode, but they appeared normally with Firefox in safe mode.&amp;#160; Here are two cropped screen shots I took of a bunch of “f” characters being entered in to the address bar, the first in normal mode, the latter in safe mode:&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="firefox address bar standard" border="0" alt="firefox address bar standard" src="http://jonschneider.com/images/jsblog/657d8a26d4fc_D3EF/firefox-address-bar-standard.png" width="425" height="62" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="firefox address bar safe mode" border="0" alt="firefox address bar safe mode" src="http://jonschneider.com/images/jsblog/657d8a26d4fc_D3EF/firefox-address-bar-safe-mode.png" width="426" height="62" /&gt;&lt;/p&gt;  &lt;p&gt;Here’s a zoomed-in view (again, normal mode first, then safe mode):&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="ffff_normal_zoom" border="0" alt="ffff_normal_zoom" src="http://jonschneider.com/images/jsblog/657d8a26d4fc_D3EF/ffff_normal_zoom.png" width="232" height="104" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="ffff_safemode_zoom" border="0" alt="ffff_safemode_zoom" src="http://jonschneider.com/images/jsblog/657d8a26d4fc_D3EF/ffff_safemode_zoom.png" width="260" height="104" /&gt;&lt;/p&gt;  &lt;p&gt;Note that in the former image (Firefox normal mode), the “f” glyphs do not appear the same as one another and have some faint red/yellow/blue/green aliasing (blurring), whereas in the latter screen capture (Firefox safe mode) each “f” glyph is identical and has no aliasing (look at the unzoomed image).&lt;/p&gt;  &lt;p&gt;At this point I was suspicious of some kind of issue with my video card.&amp;#160; The normal first course of action with a suspected video card behavior issue would be to update video card drivers.&amp;#160; When I checked, though, I found that I was already running the latest drivers for my video card (an NVidia NVS 4200M).&lt;/p&gt;  &lt;p&gt;Google was initially no help; all the searches that I tried for terms like “firefox cursor corruption” or “firefox caret appearance” resulted in pages talking about the Firefox caret navigation feature (F7 key), which was not the issue here.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I hit upon the solution when I changed angles of attack and Googled for “firefox safe mode”.&amp;#160; The first result was a &lt;a href="http://support.mozilla.com/en-US/kb/Safe%20Mode"&gt;Firefox help article describing safe mode&lt;/a&gt;, which linked to a &lt;a href="http://kb.mozillazine.org/Safe_Mode"&gt;Mozillazine knowledge base article with more details on Firefox safe mode&lt;/a&gt;. That article in turn had a list of about a dozen bug repots related to safe mode, one of which was &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=591139"&gt;Bug 591139 - Disable hardware acceleration in safe mode&lt;/a&gt;. Aha – that sounded like a video-related issue!&amp;#160; Reading through that ticket, I learned that starting in Firefox 4, a feature called “hardware acceleration” (with which I was previously unfamiliar) is disabled when Firefox is in safe mode.&lt;/p&gt;  &lt;p&gt;Hitting up Google once more, this time for “firefox disable hardware acceleration,” I was led to a setting in the Firefox options menu: &lt;strong&gt;Firefox menu | Options | Advanced | General tab | Use hardware acceleration when available&lt;/strong&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;I unchecked that setting, restarted Firefox, and that did it – the problems with the caret corruption/garbage and the malformed character glyphs no longer occurred!&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;So apparently Firefox has an on-by-default feature where it uses hardware acceleration, presumably from the local PC’s video card, further presumably to improve its performance and/or ease load on the primary CPU.&amp;#160; However, having disabled this setting, I haven’t noticed any appreciable difference in performance.&lt;/p&gt;  &lt;p&gt;I don’t know who is to blame for this issue – bad video driver, bad video hardware, Firefox itself, some combination of those, or something else entirely – but for the time being, I’m just satisfied that the issue is resolved for me!&lt;/p&gt;  &lt;p&gt;I hope this saves some frustration and/or troubleshooting time for anyone else experiencing this odd issue!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-163509657694282233?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/163509657694282233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/08/firefox-case-of-corrupted-cursor.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/163509657694282233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/163509657694282233'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/08/firefox-case-of-corrupted-cursor.html' title='Firefox: The case of the corrupted cursor'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6516094243304469202</id><published>2011-08-03T22:52:00.001-04:00</published><updated>2011-08-03T22:52:32.913-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fonts'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Key Jammin’, Circa 1950!</title><content type='html'>&lt;p&gt;While helping my Mom clean out her basement in preparation for a move recently, I came across the apparent answer to the mystery of why some older fixed-width fonts confusingly feature “1” (numeral one) and “l” (lowercase letter L) glyphs that are identical:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/5e3d489265d1_13FB0/royalTypewriter.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="royalTypewriter" border="0" alt="royalTypewriter" src="http://jonschneider.com/images/jsblog/5e3d489265d1_13FB0/royalTypewriter_thumb.jpg" width="531" height="715" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;(Hint: Look to the left of the “2” key!&amp;#160; Anything missing there?)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6516094243304469202?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6516094243304469202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/08/key-jammin-circa-1950.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6516094243304469202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6516094243304469202'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/08/key-jammin-circa-1950.html' title='Key Jammin’, Circa 1950!'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2162699032179013825</id><published>2011-07-18T00:40:00.001-04:00</published><updated>2011-07-18T00:40:01.716-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pathfind'/><category scheme='http://www.blogger.com/atom/ns#' term='cmd.exe'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>PathFind.exe 2.0.1 released</title><content type='html'>&lt;p&gt;I just posted a point release of &lt;a href="http://jonschneider.com/utilities.asp#PathFind"&gt;PathFind&lt;/a&gt;, my Windows command-line utility which finds files located on the PATH (similar to the Unix/Linux &lt;a href="http://www.ss64.com/bash/which.html"&gt;which&lt;/a&gt; utility).&lt;/p&gt;  &lt;p&gt;This is a general maintenance release which fixes a minor bug where a spurious error message would be displayed when the PATH environment variable included an extra trailing “;” character.&amp;#160; The utility’s output is also improved when multiple matching files and/or folders are found, including a display of total matches found.&lt;/p&gt;  &lt;p&gt;Download it from my &lt;a href="http://jonschneider.com/utilities.asp"&gt;utilities page&lt;/a&gt;, or directly from here: &lt;a href="http://www.jonschneider.com/utils/pathfind201.zip"&gt;PathFind.exe 2.0.1&lt;/a&gt; (6k)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2162699032179013825?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2162699032179013825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/07/pathfindexe-201-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2162699032179013825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2162699032179013825'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/07/pathfindexe-201-released.html' title='PathFind.exe 2.0.1 released'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5387810304324560174</id><published>2011-06-30T23:44:00.001-04:00</published><updated>2011-06-30T23:47:44.403-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='video card'/><category scheme='http://www.blogger.com/atom/ns#' term='overheat'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Fix: Monitor goes black and system hangs while gaming (video card overheat)</title><content type='html'>&lt;p&gt;Earlier this week, I started having an unpleasant problem with my PC: While playing a game, both monitors connected to my PC would go black (as though the PC had powered off), and the system became unresponsive (the Num Lock light would no longer turn on and off when hitting the Num Lock key).&amp;#160; However, the music the game was playing would keep playing -- indicating that the PC hadn’t totally hung or shut down.&amp;#160; Opening the PC case, I noticed that my video card was very hot to the touch.&lt;/p&gt;  &lt;p&gt;I had this happen three times in one night, in all cases happening while I was playing a game.&amp;#160; (It happened originally while playing &lt;a href="http://www.torchlightgame.com/"&gt;Torchlight&lt;/a&gt;, and then again later while playing &lt;a href="http://www.wizards.com/magic/digital/duelsoftheplaneswalkers.aspx"&gt;Magic: The Gathering 2012&lt;/a&gt;, and once again while playing the &lt;a href="http://www.spiderwebsoftware.com/avadon/index.html"&gt;Avadon: Black Fortress&lt;/a&gt; demo.)&lt;/p&gt;  &lt;p&gt;Given these symptoms, my original suspicion was an overheating-related issue with my video card (GPU), a XFX NVIDIA GeForce 9800 GT.&amp;#160; (The problem seemed to happen while the video card was under load; the system caused the monitors to go black but sounds kept playing; the video card was hot to the touch; the problem happened intermittently, across multiple applications.)&lt;/p&gt;  &lt;p&gt;I &lt;a href="http://superuser.com/questions/303169/pc-monitors-shut-off-and-system-hangs-while-playing-3d-games-but-sound-continues"&gt;posted the problem to SuperUser.com&lt;/a&gt; and got a helpful reply from user “&lt;a href="http://superuser.com/users/19943/mokubai"&gt;Mokubai&lt;/a&gt;” confirming that the problem was indeed likely due to a GPU overheat, as well as a link to a very helpful free utility, &lt;a href="http://www.techpowerup.com/gpuz/"&gt;GPU-Z&lt;/a&gt;, which (among other features) provides real-time reporting of the current GPU temperature.&lt;/p&gt;  &lt;p&gt;I downloaded and ran GPU-Z.&amp;#160; It reported that the video card temperature with my PC just sitting idle at the Windows desktop was 83 degrees C (hot!).&amp;#160; I put GPU-Z on my secondary monitor and fired up Torchlight (a 3D game) in the primary window; after playing for just a few minutes, GPU-Z reported that my video card was up to a maximum temperature of 101 degrees C (extremely hot!), with the card’s fan running at 100% speed.&amp;#160; Clearly the GPU temperature was almost certainly to blame for the problem of my monitors losing signal and the PC hanging.&lt;/p&gt;  &lt;p&gt;Tonight, I had some time to work on the problem, so I shut down and unplugged the PC and then removed the video card. The card was pretty grimy with dust. &lt;/p&gt;  &lt;p&gt;I used a small Phillips screwdriver to remove the six screws holding the “cover” onto the card, and then removed the cover itself. Having done that, I could see that there was a lot of dirty material stuck in the narrow grooves of the heatsink, which was likely obstructing the air flow through the heatsink and preventing the card’s fan from cooling off the heatsink, causing the high temperatures.&lt;/p&gt;  &lt;p&gt;I took a pipe cleaner and cleaned all of the gunk out of the heatsink, the fan blades, and the other parts of the card. Much better!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/fcdd1fb84f2a_1417A/GeForce9800GT_grimy.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="GeForce9800GT_grimy" border="0" alt="GeForce9800GT_grimy" align="left" src="http://jonschneider.com/images/jsblog/fcdd1fb84f2a_1417A/GeForce9800GT_grimy_thumb.png" width="358" height="422" /&gt;&lt;/a&gt;&lt;a href="http://jonschneider.com/images/jsblog/fcdd1fb84f2a_1417A/GeForce9800GT_clean.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="GeForce9800GT_clean" border="0" alt="GeForce9800GT_clean" src="http://jonschneider.com/images/jsblog/fcdd1fb84f2a_1417A/GeForce9800GT_clean_thumb.png" width="323" height="420" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;em&gt;(Images above: Left, XFX GeForce 9800 GT with cover removed, before cleaning; Right, after cleaning.)&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Having thoroughly cleaned the video card, I replaced the cover and the screws, reinstalled the card in my PC, and then powered the PC back on.&lt;/p&gt;  &lt;p&gt;The result: Much improved temperature readings from GPU-Z!&amp;#160; The GPU now idles at the Windows desktop at 61 degrees C, and hit a maximum temperature of 79 degrees C with an average temperature of around 75 degrees C while playing a session of Torchlight.&amp;#160; The video card’s fan speed never went above 43% while playing the game, indicating that the card itself didn’t think that it was running too hot.&lt;/p&gt;  &lt;p&gt;Given that I was originally considering buying a new video card to deal with this problem – a solution that would have run me in the neighborhood of $100 – I’m pretty happy that I was able to fix this issue of the monitors going black while gaming “for free” just by taking a few minutes to give the video card a good cleaning.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5387810304324560174?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5387810304324560174/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/06/fix-monitor-goes-black-and-system-hangs.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5387810304324560174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5387810304324560174'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/06/fix-monitor-goes-black-and-system-hangs.html' title='Fix: Monitor goes black and system hangs while gaming (video card overheat)'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2356935497307683863</id><published>2011-06-28T22:03:00.001-04:00</published><updated>2011-06-28T22:03:37.663-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='delicious.com'/><title type='text'>Fix: Attempt to log in to delicious.com is ignored</title><content type='html'>&lt;p&gt;I was recently having an issue on both my home and work machines where I couldn’t log in to my &lt;a href="http://delicious.com/"&gt;delicious.com&lt;/a&gt; (formerly &lt;a href="http://del.icio.us/"&gt;del.icio.us&lt;/a&gt;) account via Firefox.&amp;#160; After entering my login credentials, I would be redirected back to the page where I was before, but the site would still show me as being an anonymous user, rather than showing me as logged in as expected.&lt;/p&gt;  &lt;p&gt;If I entered invalid credentials, the login page would give me an “invalid credentials”-type error as normal.&lt;/p&gt;  &lt;p&gt;I could log into delicious.com ok using other browsers (I tried it in Internet Explorer 9).&lt;/p&gt;  &lt;p&gt;The fix was to clear all of my delicious.com cookies from Firefox.&amp;#160; In Firefox 5, I did this as follows: Tools menu | Options | Privacy | remove individual cookies, selecting all of the delicious.com cookies (I had about 8), and clicking Remove Cookies.&lt;/p&gt;  &lt;p&gt;After doing this, I could log into delicious.com normally.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2356935497307683863?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2356935497307683863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/06/fix-attempt-to-log-in-to-deliciouscom.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2356935497307683863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2356935497307683863'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/06/fix-attempt-to-log-in-to-deliciouscom.html' title='Fix: Attempt to log in to delicious.com is ignored'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3696450804578192650</id><published>2011-04-26T23:20:00.001-04:00</published><updated>2011-04-26T23:20:28.563-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BoundsTest'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Bounds Test v2.1.2 Released</title><content type='html'>&lt;p&gt;A minor update to my “on-screen ruler” utility for Windows, Bounds Test, is now available.&lt;/p&gt;  &lt;p&gt;This update fixes a bug where the drag-to-move and drag-edge-to-resize mouse functions did not work when the cursor was positioned over the “Widescreen Resolutions” text label.&lt;/p&gt;  &lt;p&gt;Download it here: &lt;a href="http://www.jonschneider.com/utils/BoundsTest212.zip"&gt;Bounds Test v2.1.2&lt;/a&gt; (16k). It’s also available on my &lt;a href="http://jonschneider.com/utilities.asp"&gt;Windows utilities&lt;/a&gt; page.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3696450804578192650?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3696450804578192650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/04/bounds-test-v212-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3696450804578192650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3696450804578192650'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/04/bounds-test-v212-released.html' title='Bounds Test v2.1.2 Released'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7243556687159529041</id><published>2011-04-26T23:04:00.002-04:00</published><updated>2011-04-26T23:21:41.459-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clipboard'/><category scheme='http://www.blogger.com/atom/ns#' term='ccc'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>ccc (Clipboard Character Count) v1.0.2 Released</title><content type='html'>&lt;p&gt;I just posted a small update to my ccc (“Clipboard Character Count”) utility.&lt;/p&gt;&lt;p&gt;ccc is a simple command-line utility for Windows that I originally wrote &lt;a href="http://blog.jonschneider.com/2006/07/new-utility-for-download-cccexe.html"&gt;back in 2006&lt;/a&gt;, which returns the count of characters currently present on the system clipboard.&amp;#160; (Useful these days to quickly see if a thought you’ve jotted down will fit in an SMS message or twitter update.)&lt;/p&gt;&lt;p&gt;In this update, ccc now looks for HTML table data present on the clipboard (i.e. content copied to the clipboard from a table on a web page); if present, ccc additionally reports the number of rows present in the copied portion of the table (based on the count of &amp;lt;tr&amp;gt; tags present in the copied data). This is a slightly faster way to get a count of the number of rows in an HTML table than pasting the content into a fresh Excel sheet and looking at the row number of the bottom row of data.&lt;/p&gt;&lt;p&gt;Share and Enjoy: &lt;a href="http://www.jonschneider.com/utils/ccc102.zip"&gt;ccc 1.0.2&lt;/a&gt; (4k).&amp;#160; You can also get it on my &lt;a href="http://jonschneider.com/utilities.asp"&gt;Windows utilities page&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7243556687159529041?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7243556687159529041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/04/ccc-clipboard-character-count-v102.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7243556687159529041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7243556687159529041'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/04/ccc-clipboard-character-count-v102.html' title='ccc (Clipboard Character Count) v1.0.2 Released'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5921411143025737053</id><published>2011-04-26T17:50:00.001-04:00</published><updated>2011-04-26T17:50:12.164-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Windows tip: Use “junction” for easy access to deeply nested folders</title><content type='html'>&lt;p&gt;At work, I have a particular folder on my Windows PC that I access many times per day to open and save various documents for the project that I’m working on.&amp;#160; I have two conflicting needs for where in the filesystem that folder should be located&amp;quot;:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;strong&gt;C:\&lt;/strong&gt;.&amp;#160; As I prefer using the keyboard to the mouse for quick and easy tasks, the ideal location for this folder is directly off the root directory of the C: drive.&amp;#160; It’s pretty easy to type, for example, “c:\proj\todo.txt” into an application’s Open dialog, or from the command prompt.&amp;#160; I can do that more quickly than switching to the mouse, clicking “My Computer”, double-clicking “C:”, double-clicking the “proj” folder, scrolling “todo.txt” into view, and then double-clicking on that file. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;My Documents. &lt;/strong&gt;My office’s automated backup policy only picks up documents that are located under the “My Documents” folder.&amp;#160; While I could locate my “proj” folder under My Documents rather than under the C:\ root directory, typing “c:\documents and settings\jschneid\my documents\proj” 30 times a day rather than just “c:\proj” obviously becomes very inefficient very quickly. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;So, to summarize the problem: I want my use-it-all-the-time “proj” folder to be at “c:\proj”, but I needed it to be under “My Documents” in order for it to be picked up by my office’s backup scheme.&lt;/p&gt;  &lt;p&gt;The solution: The &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896768"&gt;Junction&lt;/a&gt; utility, part of Microsoft’s &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb545021"&gt;Sysinternals&lt;/a&gt; suite of tools.&amp;#160; The Junction utility allows the creation of a folder at a particular location in the filesystem which is really a symbolic link (shortcut) to another folder, which the command prompt and Windows Explorer respect.&lt;/p&gt;  &lt;p&gt;In my case, I created my “proj” folder under My Documents (so it would be picked up by my office’s backup process).&amp;#160; Then, I used Junction to create a symbolic link to that folder at “c:\proj” for easy access to that folder via the keyboard.&lt;/p&gt;  &lt;p&gt;This solution has worked out great for me.&amp;#160; I type “c:\proj” many times every day – saving a couple of seconds over using the mouse to access that folder every time.&amp;#160; I wanted to share this tip for anyone else out there who might be able to benefit from having an easy-to-access shortcut to a deeply-nested folder on their filesystem – and for those that might not have been aware that it’s possible to set up Unix-style folder symbolic links on Windows.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896768"&gt;Junction utility&lt;/a&gt; (technet.microsoft.com)&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5921411143025737053?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5921411143025737053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/04/windows-tip-use-junction-for-easy.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5921411143025737053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5921411143025737053'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/04/windows-tip-use-junction-for-easy.html' title='Windows tip: Use “junction” for easy access to deeply nested folders'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2322954388713958951</id><published>2011-04-01T00:07:00.001-04:00</published><updated>2011-04-01T00:17:59.271-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='april 1'/><title type='text'>Announcing: Unified Theory of Software Defects!</title><content type='html'>&lt;p&gt;Earlier today, after entering my 460th bug report on a large software project that I’ve been working on at my job, I was suddenly struck by a bolt of inspiration: &lt;em&gt;&lt;strong&gt;All&lt;/strong&gt; software defects are caused by only &lt;strong&gt;two&lt;/strong&gt; possible root causes!&lt;/em&gt; Without further ado, I hereby present my &lt;strong&gt;Unified Theory of Software Defects&lt;/strong&gt;:&lt;/p&gt;  &lt;div style="border-bottom: #dddddd 1px ridge; border-left: #dddddd 1px ridge; width: 525px; margin-left: auto; border-top: #dddddd 1px ridge; margin-right: auto; border-right: #dddddd 1px ridge"&gt;   &lt;p style="text-align: center"&gt;1. Somewhere, there was a 0 where there should have been a 1.     &lt;br /&gt;2. Somewhere, there was a 1 where there should have been a 0.&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Yes, that's right... every software defect that has &lt;em&gt;ever&lt;/em&gt; occurred can be traced to some combination of these two fundamental causes! Astonishingly simple. Marvelously elegant.&lt;/p&gt;  &lt;p&gt;And of course, this theory gives rise to a &lt;strong&gt;Unified Corollary of Repairing Software Defects:&lt;/strong&gt; &lt;/p&gt;  &lt;div style="border-bottom: #dddddd 1px ridge; border-left: #dddddd 1px ridge; width: 525px; margin-left: auto; border-top: #dddddd 1px ridge; margin-right: auto; border-right: #dddddd 1px ridge"&gt;   &lt;p style="text-align: center"&gt;Adjust the software such that all 0s and 1s are properly placed.&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;I fully expect this discovery to revolutionize the craft and profession of software engineering. No, no need to thank me; I’m just glad to have the opportunity to give back to the community in this small way.&lt;/p&gt;  &lt;p style="font-size: small"&gt;(Postscript 1: Developing a universal theory of just &lt;em&gt;how&lt;/em&gt; any arbitrary software program can be adjusted “such that all 0s and 1s are properly placed” is left as an exercise for the reader.)&lt;/p&gt;  &lt;p style="font-size: small"&gt;(Postscript 2: Happy April 1st!) :-)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2322954388713958951?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2322954388713958951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/04/unified-theory-of-software-defects.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2322954388713958951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2322954388713958951'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/04/unified-theory-of-software-defects.html' title='Announcing: Unified Theory of Software Defects!'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6988181368565438783</id><published>2011-03-20T22:33:00.002-04:00</published><updated>2011-03-21T12:44:35.947-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BoundsTest'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Bounds Test v2.1.1 Released</title><content type='html'>&lt;p&gt;An update to my “on-screen ruler” utility for Windows, Bounds Test, is now available.&lt;/p&gt;&lt;p&gt;This point release addresses an issue where if the Bounds Test window was resized to its minimum height (25px), it could no longer be resized by dragging the middle of the window.&amp;#160; (The problem was that the regions along the top and bottom edges of the window that were defined to perform “resize” operations when dragged were so large that they left no room in the middle of the window for the “move” operation.)&lt;/p&gt;&lt;p&gt;Download it here: &lt;a href="http://www.jonschneider.com/utils/BoundsTest211.zip"&gt;Bounds Test v2.1.1&lt;/a&gt; (16k).&amp;#160; It’s also available on my &lt;a href="http://jonschneider.com/utilities.asp"&gt;Windows utilities&lt;/a&gt; page.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6988181368565438783?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6988181368565438783/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/03/bounds-test-v211-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6988181368565438783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6988181368565438783'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/03/bounds-test-v211-released.html' title='Bounds Test v2.1.1 Released'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-877466049124956976</id><published>2011-03-13T00:37:00.001-05:00</published><updated>2011-03-13T00:37:33.846-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BoundsTest'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Bounds Test v2.1.0 Released</title><content type='html'>&lt;p&gt;A new point release of my “on-screen ruler” utility for Windows, Bounds Test, is now available.&amp;#160; &lt;/p&gt;  &lt;p&gt;Bounds Test displays a semi-transparent window on your screen which can be resized, and shows at all times its own current size.&amp;#160; This is useful to:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Determine how much of a particular web page or other application page a user running at a particular screen resolution (say, 1024x768) would be able to view without scrolling;&lt;/li&gt;    &lt;li&gt;Quickly get a rough idea of the size in pixels of another window or other on-screen object.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;img title="" alt="Image: Bounds Test 2.1.0" src="http://www.jonschneider.com/utils/images/BoundsTest210.png" /&gt;&lt;/p&gt;  &lt;p&gt;Significant updates in this release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Added an “Always On Top” feature (accessible from the right-click context menu).&lt;/li&gt;    &lt;li&gt;Added a set of size preset buttons for widescreen resolutions.&lt;/li&gt;    &lt;li&gt;Improved the draw algorithm, greatly reducing &amp;quot;flicker&amp;quot; of the tick marks along the edges as the window is being resized.&lt;/li&gt;    &lt;li&gt;Increased the “drag area” of the edges of the form, making the form easier to resize.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Download it here: &lt;a href="http://www.jonschneider.com/utils/BoundsTest210.zip"&gt;Bounds Test 2.1.0&lt;/a&gt; (16k).&amp;#160; You can also always get the latest copy from my &lt;a href="http://www.jonschneider.com/utilities.asp"&gt;utilities page&lt;/a&gt;.&amp;#160; Enjoy!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-877466049124956976?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/877466049124956976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/03/bounds-test-v210-released.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/877466049124956976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/877466049124956976'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/03/bounds-test-v210-released.html' title='Bounds Test v2.1.0 Released'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5194274408325152780</id><published>2011-03-09T11:07:00.001-05:00</published><updated>2011-03-10T09:51:40.726-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='debugging'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss'/><title type='text'>JBoss – Pause at startup until debugger is attached</title><content type='html'>&lt;p&gt;A tidbit I picked up today at ATG developer training: It’s possible to configure JBoss to pause at startup until a debugger is attached. To do this, specify &lt;tt&gt;suspend=y&lt;/tt&gt; in JAVA_OPTS. (This can be done in &amp;lt;jbossdir&amp;gt;\bin\run.bat.) For example, the relevant line from the run.bat I’m using in the training class:&lt;/p&gt;  &lt;p&gt;set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,&lt;strong&gt;suspend=y&lt;/strong&gt; %JAVA_OPTS%&lt;/p&gt;  &lt;p&gt;With this setting, JBoss will automatically resume startup when it detects that a debugger (e.g. Eclipse) has been attached.&lt;/p&gt;  &lt;p&gt;This is useful to be able to debug things that occur while JBoss is starting up.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5194274408325152780?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5194274408325152780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2011/03/jboss-pause-at-startup-until-debugger.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5194274408325152780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5194274408325152780'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2011/03/jboss-pause-at-startup-until-debugger.html' title='JBoss – Pause at startup until debugger is attached'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4466050460063645663</id><published>2010-12-12T16:46:00.002-05:00</published><updated>2010-12-12T16:55:55.143-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='drm'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><title type='text'>Fool me once: Nintendo's policy on tranferring content purchased from Wii Shop</title><content type='html'>&lt;p&gt;I purchased a Wii back in early 2007.  Since then, over time, I had purchased a few things from the Wii Shop channel -- mostly old NES titles like the original &lt;a href="http://en.wikipedia.org/wiki/The_Legend_of_Zelda_%28video_game%29"&gt;The Legend of Zelda&lt;/a&gt;, to show my kids and nephews what Dad / Uncle Jon played while &lt;i&gt;he&lt;/i&gt; was growing up.&lt;br /&gt;
&lt;p&gt;When making those purchases, I didn't give much thought to Nintendo's policy regarding purchased downloadable content.  I purchased the games, they downloaded, they were playable on my Wii, no problem.&lt;br /&gt;
&lt;p&gt;Fast-forward to November 2010: This Wii purchased in 2007 had a few hardware problems over the years.  &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;First, a series of problems with the &lt;a href="http://blog.jonschneider.com/2009/02/wii-overheating-and-powering-off-due-to.html"&gt;Wii overheating&lt;/a&gt; which cased the Wii to power off in the middle of gameplay.  I eventually diagnosed this was due to the Wii's rear fan being stuck, and repaired myself.  &lt;br /&gt;
&lt;li&gt;Second, throughout 2009 the Wii had gone from being near-silent while powered on to making an increasingly loud buzzing/grinding noise while spinning discs in the drive (i.e. at all times during gameplay of most games); I once again &lt;a href="http://blog.jonschneider.com/2009/02/wii-overheating-and-powering-off-due-to.html"&gt;disassembled my Wii&lt;/a&gt; but was unable to resolve this issue.  &lt;br /&gt;
&lt;li&gt;Finally, and most most seriously, the Wii had started occasionally giving a disc read error when trying to read various game discs inserted into the drive.  &lt;br /&gt;
&lt;/ul&gt;&lt;p&gt;Even at the time of the initial overheating issues, the Wii was out of warranty, so getting a warranty repair was not an option.  So, being unable to repair the disc read issue myself, the options for getting a household Wii up and running again essentially boiled down to either purchasing a repair from Nintendo, or purchasing a new Wii. &lt;p&gt;On Black Friday weekend, the latter option seemed pretty attractive: Rather than pay around US $80-100 to send my old white Wii to Nintendo for a repair, Amazon.com was running a deal for a new &lt;a href="http://www.amazon.com/gp/product/B0045F8QDE?ie=UTF8&amp;tag=jonschneiderc-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0045F8QDE"&gt;Black Wii&lt;/a&gt;, including the game &lt;a href="http://www.amazon.com/Wii-Sports-Resort-Nintendo/dp/B001COQW14?ie=UTF8&amp;tag=jonschneiderc-20"&gt;Wii Sports Resort&lt;/a&gt; and a "Wii Remote Plus" controller, for $170.  With the Wii Sports Resort game alone going for almost $50, and not including an entire additional Wii Remote controller, springing for the new Black Wii seemed like a pretty good deal -- so I went ahead and jumped on it. &lt;p&gt;It did occur to me that I would need to transfer the content from my old Wii -- save game files, created Mii avatars, and purchased Wii Shop content -- from the old Wii to the new one. I was also aware of the purchased Wii Shop content being associated with a specific Wii console, i.e. a purchased game can't be copied onto an SD card, copied onto another Wii, and played on that second Wii, for obvious anti-piracy reasons.  However, I figured that my situation must be pretty common -- a person replacing an old, broken Wii and/or upgrading to the new &lt;a href="http://www.amazon.com/gp/product/B0045F8QDE?ie=UTF8&amp;tag=jonschneiderc-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0045F8QDE"&gt;Black&lt;/a&gt; or &lt;a href="http://www.amazon.com/gp/product/B0045FEEAS?ie=UTF8&amp;tag=jonschneiderc-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0045FEEAS"&gt;Red Wii&lt;/a&gt; from the old white one -- and so I'd just need to call Nintendo, provide the serial numbers of the old Wii and the new one, and have them transfer my content over. &lt;p&gt;Before first calling, I did check the &lt;a href="http://www.nintendo.com/consumer/"&gt;Nintendo support website&lt;/a&gt;; however, despite the design and comprehensiveness of the site seeming pretty good, there was no information to be found about transferring purchased downloaded Wii Shop content from one Wii console to another. &lt;p&gt;So, I called the Nintendo support line, and explained my situation.  The representative I talked to was very friendly.  Given the serial number of my old (white) Wii, she was able to look up my account and see all of the Wii Shop content that I had purchased.  &lt;b&gt;Unfortunately, even after talking to a supervisor, she explained that Nintendo has a policy of never transferring purchased Wii Shop content from one Wii to another, and that they were unwilling to make an exception in my situation.&lt;/b&gt;  (The one permitted exception to the policy that the rep mentioned was that in the event that a Wii was sent in to Nintendo for a purchased repair or warranty repair, and the Wii was found to be completely unrepairable, Nintendo would transfer the Wii Shop account to a different Wii console, and return that second console to the customer.) &lt;p&gt;Even though I didn't have a great deal of money invested in Wii Shop content, I was pretty upset by this.  Other major &lt;a href="http://en.wikipedia.org/wiki/Digital_rights_management"&gt;DRM&lt;/a&gt; systems for games, such as &lt;a href="http://steampowered.com"&gt;Steam&lt;/a&gt; on the PC, or (as far as I understand them) the systems employed on the XBox 360 and Playstation 3, do allow purchased content to be transferred to, and played on, hardware other that on which the content was originally purchased.  When consumers increasingly become aware that, contrary to expectations that have been established by other vendors, Wii Shop purchased content cannot be moved to other hardware, I can't help but wonder whether Nintendo will revise their existing policy and come up with a way that consumers can transfer their purchased content onto another Wii console -- or to the next-generation Nintendo console when that inevitably is announced and released at some point in the future. &lt;p&gt;In the meantime, though, I would advise all current Wii owners to consider carefully before purchasing any content from the Wii Shop channel.  Certainly, in my case, having been "fooled once" -- and now not having access to any of the Wii Shop content I've previously purchased from Nintendo on my new Wii console, also purchased from Nintendo -- I will not be "fooled again" into purchasing any more content from the Wii Shop, until such time that Nintendo revises their DRM policy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4466050460063645663?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4466050460063645663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/12/fool-me-once-nintendos-policy-on.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4466050460063645663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4466050460063645663'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/12/fool-me-once-nintendos-policy-on.html' title='Fool me once: Nintendo&apos;s policy on tranferring content purchased from Wii Shop'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6830997185660865390</id><published>2010-12-08T20:16:00.001-05:00</published><updated>2010-12-08T20:16:45.818-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Middle-click taskbar button to close application – Windows 7 edition</title><content type='html'>&lt;p&gt;As I’ve &lt;a href="http://blog.jonschneider.com/2008/02/utility-of-day-taskbar-shuffle.html"&gt;previously posted for Windows XP&lt;/a&gt;, a user interface convention that I really wish would become a universal standard for applications that support multiple tabs (such as modern web browsers) is upon middle mouse button click on a tab, the application would close that tab.&amp;#160; This is the standard behavior in Firefox, Internet Explorer 8, and Chrome (and probably other browsers, too).&lt;/p&gt;  &lt;p&gt;I also wish Microsoft would match the IE8 behavior and make “close application” the default behavior for a middle-click on an application taskbar button in Windows, since the Windows taskbar is essentially just a tab bar for open applications.&amp;#160; Unfortunately, in Windows 7, middle-click on an application’s taskbar button is mapped to “launch new instance of application,” not to “close application.”&amp;#160; Furthermore, there seems to be no out-of-the-box way to change this behavior.&lt;/p&gt;  &lt;p&gt;To the rescue: &lt;a href="http://rammichael.com/7-taskbar-tweaker"&gt;7 Taskbar Tweaker&lt;/a&gt; by “RaMMicHaeL.”&amp;#160; Among a few other available features, this utility does exactly what I’m looking for: On a PC running Windows 7, it remaps a middle-click on a taskbar application button to close that application.&amp;#160; I’ve been using version 1.1 of the utility on my primary home PC running Windows 7 for months now, with no problems at all.&amp;#160; Highly recommended if you’re a fan of the middle-click-to-close UI convention!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6830997185660865390?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6830997185660865390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/12/middle-click-taskbar-button-to-close.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6830997185660865390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6830997185660865390'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/12/middle-click-taskbar-button-to-close.html' title='Middle-click taskbar button to close application – Windows 7 edition'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1793779987882003289</id><published>2010-11-29T09:40:00.001-05:00</published><updated>2010-11-29T09:41:08.049-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Workaround: Blank screen upon lid open (Lenovo ThinkPad laptop)</title><content type='html'>&lt;p&gt;Occasionally when I open the lid of my Lenovo ThinkPad T500 laptop, I get a blank screen – nothing at all is visible on the laptop’s display, even though the machine is powered on.&amp;#160; In particular, this tends to happen after I undock the computer from the docking station, close the lid, wait a short time (i.e. carry the laptop with the lid closed into another room), and then open the lid again.&lt;/p&gt;  &lt;p&gt;I’m not sure what the root cause of this issue is.&amp;#160; However, I’ve found a workaround to get the display to come back on after I’ve opened the lid and the display is blank: &lt;strong&gt;Press Fn+F7&lt;/strong&gt;.&amp;#160; (This is the same keystroke that switches display modes when multiple monitors, or a projector, are connected to the PC.)&lt;/p&gt;  &lt;p&gt;(Note: I don’t have the Lenovo Presentation Director application installed on my machine, because it doesn’t seem to work very well with the 3-monitor configuration I have at my desk.&amp;#160; Presentation Director overrides the Fn+F7 keystroke; thus, I’m not sure whether this workaround would work on machines with Presentation Director installed.)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1793779987882003289?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1793779987882003289/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/11/workaround-blank-screen-upon-lid-open.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1793779987882003289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1793779987882003289'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/11/workaround-blank-screen-upon-lid-open.html' title='Workaround: Blank screen upon lid open (Lenovo ThinkPad laptop)'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3067134273852229824</id><published>2010-07-13T17:07:00.001-04:00</published><updated>2010-07-13T17:09:16.891-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows media center'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc-build-2010'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>HTPC remote control review: Lenovo N5901 multimedia remote with keyboard</title><content type='html'>&lt;p&gt;&lt;img title="n5901" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="153" alt="n5901" src="http://jonschneider.com/images/jsblog/HTPCremotecontrolreviewLenovoN5901multim_B5F6/n5901.jpg" width="244" align="right" border="0" /&gt;&lt;/p&gt;  &lt;p&gt;A couple of months ago, to use as a remote control for my &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html"&gt;Windows 7 HTPC&lt;/a&gt;, I purchased a &lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;Lenovo N5901 multimedia remote &lt;/a&gt;&lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;with keyboard&lt;/a&gt; (part no. 57Y6336).&amp;#160; The remote control easy fits in one hand, yet it combines a QWERTY keyboard, a trackball and two mouse buttons, and volume / playback buttons.&amp;#160; Following are my comments on the different aspects of the device, based on my experience with it so far.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Setup: &lt;/strong&gt;The trackball and keyboard both worked fine “out of the box” for me with Windows 7 upon plugging in the (tiny!) USB wireless receiver to the PC, both in Windows Media Center and on the normal Windows 7 desktop – no software install was needed.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Keyboard: &lt;/strong&gt;The keyboard is a “mostly-full” keyboard.&amp;#160; It isn’t suitable for touch-typing; I’m a pretty good typist on a standard QWERTY keyboard, but I can’t use the keyboard on the N5901 without looking down at it as I type.&amp;#160; The keyboard also has no function keys (F1, F2, … F12).&amp;#160; &lt;/p&gt;  &lt;p&gt;The N5901 keyboard isn’t really suitable for use for any heavy-duty typing (e.g. composing emails) but it works well enough for keying in a Windows password at boot time, or for entering a few characters of the name of a show to search for in Windows Media Center.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Trackball: &lt;/strong&gt;The included trackball and two mouse buttons work just fine.&amp;#160; One-handed use is possible, but I’ve found that it works best to use it with two hands; using the controller with only my left hand, I occasionally accidentally nudge the trackball with my thumb as I reach around the trackball to left-click.&amp;#160; It works better for me to hold the remote with both hands and use right thumb for the trackball, and left thumb to left-click.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Battery Life: &lt;/strong&gt;The battery life is at the very least “okay,” as I’m on my 3rd month of using the remote, and it’s still on its original set of two AAA batteries.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Wireless Connectivity: &lt;/strong&gt;The wireless connectivity for me was slightly suspect – when I first used the remote, it would usually work fine, but it would occasionally “drop” a split second of my trackball use, or a single key press using the keyboard.&amp;#160; (The latter was particularly frustrating when entering my password logging in to Windows following a reboot.)&amp;#160; My couch where I would typically sit and use the remote is located around 15 feet from the HTPC – well within the device’s specified operational range of 10 meters.&lt;/p&gt;  &lt;p&gt;In my living room configuration, the couch is “L” shaped, with one side of the “L” extending along a wall toward the TV and the HTPC.&amp;#160; I was therefore able to work around the occasional wireless connectivity issues by purchasing a 10-foot USB extension cable (for less than $5 shipped off eBay), running that cable from the PC under my couch to underneath the place I usually sit in the middle of the couch, and plugging the N5901’s USB wireless receiver into the extension cable under the couch.&amp;#160; Having done this, the wireless connectivity now works with no problems.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Playback Controls: &lt;/strong&gt;The N5901 features “play”, “stop”, “fast forward”, “rewind”, “previous”, and “next” multimedia playback control buttons.&amp;#160; All work just fine and as expected out of the box with Windows Media Center on Windows 7.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Volume Controls: &lt;/strong&gt;The N5901 also features “volume up” and “volume down” buttons.&amp;#160; For some reason, at least for TV playback, although when I press these buttons Windows Media Center reports the volume level going up and down (minimum 0, maximum 50), the actual sound output level from my TV speakers doesn’t change, unless I turn the volume all the way down to 0, at which point the sound does cut out entirely (mute).&amp;#160; &lt;/p&gt;  &lt;p&gt;Since the volume button presses on the remote are being received successfully by Windows Media Center, the problem apparently is with some other aspect of my hardware configuration, not the N5901 itself.&amp;#160; I’ve just been using the TV’s own remote instead to control the volume, which works fine.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Orange Button&lt;/strong&gt;: The N5901 features a prominent, but unlabeled “orange button” in the top-left corner of the control (visible in the above image).&amp;#160; On my Windows 7 machine, pressing this button results in the somewhat odd behavior of bringing up a Windows Explorer window with the location set to “My Computer.”&amp;#160; Neither Windows 7 nor the N5901 itself provides any way (that I could figure out) to change this behavior.&lt;/p&gt;  &lt;p&gt;What I really wanted this button to do was to act similarly to the “TiVo” button on a TiVo remote – that is, in the case of my setup, as a “Go to Windows Media Center Home screen” button.&amp;#160; Specifically, I wanted this behavior:&lt;/p&gt;  &lt;ol&gt;   &lt;p&gt;1. If Windows Media Center (WMC) is not currently running, run it.      &lt;br /&gt;2. If WMC is already running, but is not the active window, make it the active window.       &lt;br /&gt;3. If WMC is the active window, navigate to the WMC front page / main menu.       &lt;br /&gt;4. Suppress the default behavior of bringing up &amp;quot;My Computer.&amp;quot;&lt;/p&gt; &lt;/ol&gt;  &lt;p&gt;The “green button” on “designed for Windows Media Center” remote controls might have this behavior as well; however, I’m not sure, never having had the chance to use one.&lt;/p&gt;  &lt;p&gt;After some research, I was able to come up with a script for the free &lt;a href="http://www.autohotkey.com/"&gt;AutoHotKey&lt;/a&gt; utility to accomplish this behavior.&amp;#160; This is the script:&lt;/p&gt;  &lt;pre&gt;VKB6::  ;On a press of the Lenovo N5901 orange button:
  if WinActive(&amp;quot;Windows Media Center&amp;quot;)  ;Is WMC the current active window? 
    Send #!{Enter}  ;Act like a &amp;quot;green button&amp;quot; press (go to WMC main menu) 
  else 
    run c:\windows\ehome\ehshell.exe  ;Run/activate WMC 
  return&lt;/pre&gt;

&lt;p&gt;The complete details of how I created this script are available in a &lt;a href="http://superuser.com/questions/140173/"&gt;superuser.com post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Backlight: &lt;/strong&gt;Probably the biggest drawback of the N5901 is that the buttons are not backlit.&amp;#160; In a completely dark room, the QWERTY keyboard is pretty much unusable, and the playback control buttons are pretty difficult to use.&amp;#160; The trackball and mouse buttons are no problem to use in the dark, though.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Based on my positive experience with the device over the past couple of months, I would recommend the &lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;N5901&lt;/a&gt; as a reasonably inexpensive “all-in-one” (mouse + keyboard + playback buttons) HTPC remote control.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3067134273852229824?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3067134273852229824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/07/htpc-remote-control-review-lenovo-n5901.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3067134273852229824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3067134273852229824'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/07/htpc-remote-control-review-lenovo-n5901.html' title='HTPC remote control review: Lenovo N5901 multimedia remote with keyboard'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3631943521847997703</id><published>2010-06-14T00:00:00.001-04:00</published><updated>2010-06-14T00:00:37.651-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='ebay'/><category scheme='http://www.blogger.com/atom/ns#' term='investigation'/><title type='text'>Bad eBay experience – Inadvertently buying a bootleg DS game</title><content type='html'>&lt;p&gt;A couple of weeks ago, I had a hankering to play a classic RPG game.&amp;#160; After looking around at the available options for systems that I own, I decided to pick up a copy of Dragon Quest V for the Nintendo DS.&lt;/p&gt;  &lt;p&gt;Unfortunately, even though the game was released in the U.S. just last year (2009), it’s already out of print, so I went to eBay.&amp;#160; There were just a few copies of the game for sale; most were going for around $30, but one “cartridge only” auction was going for a “buy it now” price of $17.&amp;#160; The auction was from a seller in New York and nothing about the auction at the time made me suspicious (though perhaps it should have – keep reading), so I went ahead and bought the auction.&lt;/p&gt;  &lt;p&gt;I got the game in the mail a few days later, and played it.&amp;#160; The game didn’t slide particularly smoothly into my DS Lite – it was a slight “pressure fit” – but I didn’t really think anything of it at the time.&amp;#160; The game started up with no problems.&lt;/p&gt;  &lt;p&gt;After viewing the introductory sequence (showing the main character’s birth) and proceeding to the first playable portion of the game (where the main character, now a child, is travelling on a small ship), I ran into a problem: I couldn’t figure out how to get off the boat or otherwise advance the plot.&amp;#160; I’d talked to all of the NPCs on the ship several times each, and explored everywhere that I could; after doing that, there just seemed to be nothing else to do, and no enemies at all to fight.&lt;/p&gt;  &lt;p&gt;Eventually I consulted &lt;a href="http://www.gamefaqs.com/"&gt;gamefaqs&lt;/a&gt;, but none of the FAQs gave any special attention to the boat scene – they all just seemed to assume that advancing past the scene would present no problem at all.&amp;#160; &lt;/p&gt;  &lt;p&gt;I searched Google for terms like “dragon quest v boat stuck,” and got my first obvious clue that something was not right.&amp;#160; Apparently the programmers at Square Enix, the game’s developer/publisher, included code in the game that when playing a &lt;em&gt;counterfeit copy&lt;/em&gt; of the game, the player would experience game behavior exactly matching the problem I was having – the game would just never advance past the boat scene, and the player would basically be stuck.&amp;#160; &lt;/p&gt;  &lt;p&gt;However, all of the references to this behavior that I found were in reference to players playing an unauthorized copy of the game via an &lt;a href="http://en.wikipedia.org/wiki/Emulator"&gt;emulator&lt;/a&gt;.&amp;#160; I, on the other hand, was playing what I had thought to be a legitimately-purchased copy of the game, on actual physical Nintendo DS Lite hardware.&amp;#160; Still, the behavior I was seeing made me strongly suspect that I’d been sold an unauthorized, or “bootleg,” copy of the game.&lt;/p&gt;  &lt;p&gt;&lt;a title="Senator Vreenak says: &amp;quot;It&amp;#39;s a FAAAKE!&amp;quot;" href="http://memory-alpha.org/wiki/Vreenak"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="Senator Vreenak says: &amp;quot;It&amp;#39;s a FAAAKE!&amp;quot;" border="0" alt="Senator Vreenak says: &amp;quot;It&amp;#39;s a FAAAKE!&amp;quot;" align="right" src="http://jonschneider.com/images/jsblog/Ipurchaseda_14718/VreenakItsAFake.jpg" width="260" height="300" /&gt;&lt;/a&gt;Researching further, the copy of the game that I’d been sent had a serial number on the front of the cartridge of “NTR-CDXP-EUR.”&amp;#160; &lt;a href="http://www.google.com/search?q=NTR-CDXP-EUR"&gt;Googling on that&lt;/a&gt;, I found two things: &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;That serial number actually apparently was assigned to some game called “Driving Theory Training” (and not to Dragon Quest V); &lt;/li&gt;    &lt;li&gt;A few forum posts from other people saying that they had a DS cartridge with that serial number (of various other games, neither Dragon Quest V nor “Driving Theory Training”) and they were suspicious that the cartridge was a bootleg.&amp;#160; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;This convinced me that I did have a bootleg cartridge on my hands.&amp;#160; This made me pretty unhappy – I purchase all of my games legitimately, and don’t “pirate” games.&amp;#160; If a particular game costs more than I’m willing to pay to play it, then I simply don’t play it.&lt;/p&gt;  &lt;p&gt;I contacted the seller, and he agreed to refund my money upon my shipping the cartridge back to him.&amp;#160; He claimed to be unaware that he was selling bootleg copies of games, and said that he would take the issue up with his supplier.&amp;#160; Ultimately I’m not sure exactly how honest he was being, but he did end up refunding my money (less the the $3 and change that I paid to ship the game back to him).&lt;/p&gt;  &lt;p&gt;So: What should I have done to avoid buying this game to begin with, and what should I do to avoid buying counterfeit game cartridges in the future?&amp;#160; None of the following points taken on its own is a certain indication of a bootleg game; however, all together, they may be adequate cause for being suspicious of a particular auction:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Price: &lt;/strong&gt;The low sell price of this game relative to other auctions for the same (somewhat rare) game should perhaps have been cause for suspicion.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Contents: &lt;/strong&gt;The fact that the game was “cartridge only,” rather than including case and manual, should perhaps have been cause for concern.&amp;#160; (Again, certainly there are many legitimate “cartridge only” auctions, but this taken in combination with other factors should have raised a red flag.)&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Origin: &lt;/strong&gt;This particular auction was shipping from New York rather than from China; I have seen, though, some other sales of unusually low-priced games originating in China that are pretty obviously for counterfeit copies.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Image&lt;/strong&gt;: The auction listing included an image of the cartridge, but it was blurry, and the serial number on the front of the cartridge was unreadable.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I couldn’t have determined this from looking at the auction online, but when I tried physically lining up the counterfeit game next to a few of my legitimate DS games, the difference was fairly obvious.&amp;#160; Although the counterfeit cartridge on its own was pretty legitimate-looking upon a casual inspection, the size and shape of the cartridge were just barely “off” compared to the other legitimate cartridges, which were all identical to one another.&amp;#160; (This was the cause of the issue I mentioned of the bootleg cartridge not quite being an easy fit into my DS Lite, like legitimate games all are.)&lt;/p&gt;  &lt;p&gt;At least this incident was a learning experience -- that bootleg console game software is out there and is being sold.&amp;#160; In the future I will likely take one or both of the following steps before bidding on an auction that seems like it might be suspect:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Just ask the seller if the game is a genuine copy.&amp;#160; If the answer is anything other than an honest-seeming answer along the lines of “yes, absolutely,” then don’t bid.&lt;/li&gt;    &lt;li&gt;Ask the seller what the serial number on the front of the cartridge is (if it isn’t visible in a photo on the auction).&amp;#160; If it isn’t what it should be, then certainly do not bid.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I might never have realized that I was playing a counterfeit copy if there hadn’t been this particular variety of &lt;a href="http://en.wikipedia.org/wiki/Digital_rights_management"&gt;DRM&lt;/a&gt; built into the game.&amp;#160; I’m not normally a big fan of DRM (who is?), but I understand the necessity of it; still, I wish this DRM had been of a “fail fast” nature (i.e. have the game refuse to run at all if it identified itself as being counterfeit) – then I wouldn’t have lost a couple of hours of my evening to playing a broken game and researching the problem.&amp;#160; I’d much rather have just had the opportunity to honestly purchase a legitimate copy of the game (and avoid supporting whatever pirate created this unauthorized copy) the first time.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3631943521847997703?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3631943521847997703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/06/bad-ebay-experience-inadvertently.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3631943521847997703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3631943521847997703'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/06/bad-ebay-experience-inadvertently.html' title='Bad eBay experience – Inadvertently buying a bootleg DS game'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6318583323256128258</id><published>2010-05-23T23:08:00.001-04:00</published><updated>2010-05-25T12:27:02.813-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='household'/><category scheme='http://www.blogger.com/atom/ns#' term='ati'/><category scheme='http://www.blogger.com/atom/ns#' term='windows media center'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc-build-2010'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>HTPC Build part 5 – Parts List! My $500 Windows 7 2010 HTPC</title><content type='html'>&lt;p&gt;&lt;em&gt;This is the fifth in a series of posts I’m writing about an HTPC (Home Theatre PC) build that I recently completed.&amp;#160; To see a list of all posts in this series, &lt;/em&gt;&lt;a href="http://blog.jonschneider.com/search/label/htpc-build-2010"&gt;&lt;em&gt;click here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Having gotten &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-1-diy-antenna.html"&gt;over-the-air HDTV set up&lt;/a&gt;, &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-2-testing-pc-tv-tuner.html"&gt;successfully tested a PC TV tuner and Windows Media Center&lt;/a&gt;, &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html"&gt;made an attempt to recycle an old PC into an HTPC&lt;/a&gt;, and &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html"&gt;done some testing with a loaner HTPC&lt;/a&gt;, I was finally ready to finalize a list of parts, place the order, and build my own HTPC!&lt;/p&gt;  &lt;p&gt;Here is the final parts list for my HTPC:&lt;/p&gt;  &lt;div&gt;   &lt;table cellspacing="0" cellpadding="2" width="782" align="left" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&amp;#160;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;&amp;#160;&lt;/td&gt;          &lt;td valign="bottom" width="126"&gt;&lt;strong&gt;Cost              &lt;br /&gt;(USD; shipped;               &lt;br /&gt;including tax)&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="bottom" width="114"&gt;&lt;strong&gt;Purchased From&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="bottom" width="120"&gt;&lt;strong&gt;Purchase Date&lt;/strong&gt;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Motherboard&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Gigabyte-GA-MA785GM-US2H-Micro-ATX-Motherboard/dp/B002HJ2CA8/ref=sr_1_1?ie=UTF8&amp;amp;s=electronics&amp;amp;qid=1274586155&amp;amp;sr=8-1"&gt;Gigabyte AMD GA-MA785GM-US2H&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$58 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;May 2010 &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;CPU&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Processor-AMD-Phenom-550-Socket/dp/B0037V63BE?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0037V63BE"&gt;AMD Phenom II X2 550 Callisto 3.1GHz&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$77 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;May 2010 &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;RAM&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;Corsair 4 GB (2x 2GB) DDR2-800 (PC2 6400) TWIN2X4096-6400C5DHX &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$26&lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.frys.com/"&gt;frys.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;November 2008&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Hard disk&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Western-Digital-Caviar-Drive-WD6400AAKS/dp/B0017XUX7O?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0017XUX7O"&gt;Western Digital 640 GB internal SATA&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$70 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;February 2010 &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Onboard video&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;ATI Radeon HD 4200&lt;/td&gt;          &lt;td valign="top" width="126"&gt;$0            &lt;br /&gt;(on motherboard)&lt;/td&gt;          &lt;td valign="top" width="114"&gt;--&lt;/td&gt;          &lt;td valign="top" width="120"&gt;--&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Add-on video card&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="284"&gt;(None -- yet) &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$0 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;--&lt;/td&gt;          &lt;td valign="top" width="120"&gt;-- &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;TV tuner&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Hauppauge-1200-WinTV-HVR-850-Tuner/dp/B00169CDUY?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B00169CDUY"&gt;Hauppauge USB HVR-850&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="126"&gt;$50&lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.amazon.com/exec/obidos/redirect-home/jonschneiderc-20"&gt;amazon.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;January 2010&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Optical drive&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Internal-Rewritable-Optical-DRW-24B1ST-Retail/dp/B00358WZMA/ref=sr_1_3?ie=UTF8&amp;amp;s=electronics&amp;amp;qid=1274585932&amp;amp;sr=1-3"&gt;ASUS 24X DVD RW DRW-24B1ST SATA&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$27 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;May 2010 &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Wireless LAN&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.monoprice.com/products/product.asp?c_id=105&amp;amp;cp_id=10501&amp;amp;cs_id=1050105&amp;amp;p_id=5337&amp;amp;seq=1&amp;amp;format=2"&gt;Monoprice USB Wireless Lan 802.11G&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$11&lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.monoprice.com/"&gt;monoprice.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;January 2010&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;PC case&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;(Recycled 2004 desktop PC case)&lt;/td&gt;          &lt;td valign="top" width="126"&gt;$0&lt;/td&gt;          &lt;td valign="top" width="114"&gt;--&lt;/td&gt;          &lt;td valign="top" width="120"&gt;2004&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Power supply unit&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Corsair-CMPSU-400CX-400-Watt-Certified-compatible/dp/B001FXB7X0?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B001FXB7X0"&gt;CORSAIR CMPSU-400CX 400W&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$30 (after rebate)&lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;May 2010&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Operating system&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16832116754&amp;amp;cm_re=windows_7_64bit_oem-_-32-116-754-_-Product"&gt;Windows 7 Home Premium 64-bit (OEM)&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$100 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;May 2010 &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;Remote control&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="284"&gt;&lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;Lenovo Multimedia Remote with Keyboard 57Y6336 / N5901&lt;/a&gt; &lt;/td&gt;          &lt;td valign="top" width="126"&gt;$38 &lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.lenovo.com/"&gt;lenovo.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;April 2010&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="136"&gt;&lt;strong&gt;HDMI cable&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="288"&gt;&lt;a href="http://www.meritline.com/3-pcs-of-6-feet-hdmi-male-to-male-digital-av-cable-28-awg---p-26865.aspx"&gt;HDMI cable, 6’, male-to-male&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="126"&gt;$1&lt;/td&gt;          &lt;td valign="top" width="114"&gt;&lt;a href="http://www.meritline.com/"&gt;meritline.com&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="120"&gt;November 2009&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&lt;strong&gt;Total Cost: $488 &lt;/strong&gt;&lt;span style="font-size: small"&gt;(Not including a PC case)&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;To cut to the chase: &lt;strong&gt;This HTPC works great!&amp;#160; &lt;/strong&gt;The hardware worked fine immediately upon being assembled; the machine works great as a DVR and meets all of my other goals as well (with the exception of being able to act as a high-end gaming PC -- more on that below); and the machine has none of the video/overscan issues with my Philips 3000-series HDTV that I had encountered with the &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html"&gt;Intel-based loaner HTPC I tested&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Read on for more detailed commentary on the specific parts that I decided on ordering, followed by my thoughts on the performance of the new HTPC over the several few weeks that I’ve had it up and running so far.&lt;/p&gt;  &lt;h3&gt;Parts&lt;/h3&gt;  &lt;h4&gt;Motherboard / CPU / Onboard Video&lt;/h4&gt;  &lt;p&gt;As I mentioned in the &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html"&gt;previous post in this series&lt;/a&gt;, I had encountered some fairly significant video issues with &lt;a href="http://en.wikipedia.org/wiki/Overscan"&gt;overscan&lt;/a&gt; and flickering of thin black lines when testing with an Intel-based HTPC and its Intel GMA X4500 onboard video, which my friend Dave had been kind enough to let me borrow and test with my TV for several days.&lt;/p&gt;  &lt;p&gt;My consequent decision to opt for an AMD/ATI-based build for this HTPC, including Radeon HD 4200 onboard video, turned out to be a good one!&amp;#160; Hooking the PC up to my Philips 32PFL5332D/37 HDTV via HDMI, everything just worked great “out of the box.”&amp;#160; There were no issues with overscan; the PC video output running at 1920x1080 was automatically sized correctly to fit the viewable area of the TV display, without me having to do anything.&lt;/p&gt;  &lt;p&gt;Further, the overall quality of the display was much better as compared to the Intel GMA X4500 test machine.&amp;#160; There were none of the issues with thin black lines appearing to “flicker” that I had noticed with the Intel onboard video.&amp;#160; Text on the TV display is quite readable, particularly once I increased the default text size in Windows 7 to 150% (via Control Panel | Appearance and Personalization | Display).&lt;/p&gt;  &lt;p&gt;Regarding the specific motherboard and CPU I purchased, the purchase criteria for these parts were, in roughly descending order of importance (most important criteria first):&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Decent quality onboard video capable of HD video playback &lt;/li&gt;    &lt;li&gt;Native onboard HDMI-out &lt;/li&gt;    &lt;li&gt;Very positive reviews (Parts that would be likely to “just work”) &lt;/li&gt;    &lt;li&gt;Reasonable price &lt;/li&gt;    &lt;li&gt;Compatible with the 4 GB of DDR2-800 RAM I already owned (more on this below) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The &lt;a href="http://www.amazon.com/Gigabyte-GA-MA785GM-US2H-Micro-ATX-Motherboard/dp/B002HJ2CA8/ref=sr_1_1?ie=UTF8&amp;amp;s=electronics&amp;amp;qid=1274586155&amp;amp;sr=8-1"&gt;Gigabyte AMD GA-MA785GM-US2H&lt;/a&gt; and &lt;a href="http://www.amazon.com/Processor-AMD-Phenom-550-Socket/dp/B0037V63BE?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0037V63BE"&gt;AMD Phenom II X2 &lt;/a&gt;that I ended up deciding on fit all of these criteria nicely.&amp;#160; At a combined cost of $135 shipped (including a $22 “combo” promotion that newegg.com was running at the time of my purchase), I got performance that was adequate for the demands that would be placed on the HTPC at a pretty good price.&lt;/p&gt;  &lt;h4&gt;RAM&lt;/h4&gt;  &lt;p&gt;Although I included the cost of the RAM in my calculated “Total Cost” above (the $488 figure), I actually ended recycling 4 GB of Corsair-brand RAM that I had purchased for the &lt;a href="http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html"&gt;desktop PC that I built in 2008&lt;/a&gt;, which is still my primary home PC.&amp;#160; Running the 2008 desktop PC with the 4 GB of Corsair RAM &lt;em&gt;and &lt;/em&gt;4 GB of Crucial-brand RAM (8 GB total), the machine would be mostly stable (and pass Windows 7’s suite of memory tests), but would bluescreen once every month or two.&amp;#160; I pulled the 4 GB of Crucial RAM out of the machine, but the problems continued; I replaced the Crucial RAM and pulled out the Corsair RAM, and the problems stopped.&amp;#160; (Note: I do realize that I shouldn’t have been running two different brands of RAM in the same PC in any event.)&amp;#160; &lt;/p&gt;  &lt;p&gt;To save some money, and on the theory that there was just some kind of incompatibility between my 2008 PC’s motherboard and the Corsair RAM, I tried installing the 4 GB of Corsair RAM in the HTPC.&amp;#160; So far, this experiment has been a success; I’ve had no bluescreen/crashing troubles at all with the HTPC in the several weeks that it’s been running at this point.&lt;/p&gt;  &lt;h4&gt;Hard Disk&lt;/h4&gt;  &lt;p&gt;I bought the hard drive for the HTPC, a 640 GB Western Digital internal SATA drive, a couple of months earlier than most of the rest of the parts, as part of &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html"&gt;my attempt to turn my old 2004 desktop PC into an HTPC&lt;/a&gt;.&amp;#160; When that didn’t pan out, I was able to just use that same drive in the final HTPC build, as I had planned.&amp;#160; &lt;/p&gt;  &lt;p&gt;The only downside to this approach turned out to be that over the last month or so, there have been a lot of good sales on hard drives; had I waited, I could probably have picked up a 1 TB drive for not much more than the $70 that I paid for the 640 GB drive back in February, which would allow me to record a lot more HD video on the HTPC.&amp;#160; I’m not too concerned about this, though.&amp;#160; 640 GB still allows for a good amount of HD video recording, and in a year or two when hard drive prices have dropped even further, I can always easily add another (larger) SATA internal hard drive to the machine if I find that I want more recording capacity.&lt;/p&gt;  &lt;h4&gt;Add-on video card&lt;/h4&gt;  &lt;p&gt;As noted in the table above, I opted not to buy an add-on video card for the HTPC as part of the initial build.&amp;#160; Aside from not being able to act as a high-end gaming machine, the HTPC functions fine with just the onboard video.&amp;#160; By waiting, I’ll be able to buy a more powerful video card for my dollar later on.&lt;/p&gt;  &lt;h4&gt;PC Case&lt;/h4&gt;  &lt;p&gt;As with the RAM, I decided to save money by re-using an old part.&amp;#160; &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html"&gt;Using the 2004 motherboard, CPU, and RAM for the HTPC didn’t work out&lt;/a&gt;, but the 2004 case was still perfectly good; I took out the old motherboard, and installed the new parts in that case.&amp;#160; It’s a full-size desktop PC case rather than an HTPC form factor case that would fit in the entertainment center cabinet and look nice sitting next to my other devices such as the Wii; a “real” HTPC case is always something that I can “upgrade” to later.&amp;#160;&amp;#160; &lt;/p&gt;  &lt;h4&gt;Remote Control&lt;/h4&gt;  &lt;p&gt;&lt;img title="n5901" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="149" alt="n5901" src="http://jonschneider.com/images/jsblog/HTPCBuildpart5TheBuild_14BD4/n5901.jpg" width="240" align="right" border="0" /&gt;The remote control I purchased, a &lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;Lenovo Multimedia Remote with Keyboard 57Y6336 (N5901)&lt;/a&gt;, is something that I wasn’t originally planning on getting.&amp;#160; I had originally envisioned using a more traditional TV-like remote to control the HTPC from the couch.&amp;#160; However, when the N5901 went on sale on the Lenovo site for 50% off, I decided to take a chance on it – a handheld remote that could also function as a mouse &lt;em&gt;and &lt;/em&gt;as a QWERTY keyboard seemed pretty cool.&amp;#160; &lt;/p&gt;  &lt;p&gt;My experience with the N5901 has been mostly good, with a few caveats.&amp;#160; I’ll share my full thoughts on the device in a subsequent post in this series.&lt;/p&gt;  &lt;h3&gt;The Build&lt;/h3&gt;  &lt;p&gt;Putting together the new PC was smooth and easy – just the way I like these things to work!&amp;#160; All of the parts went together with no problems, and the completed PC booted up successfully the first time that I powered it on.&lt;/p&gt;  &lt;p&gt;My new OEM copy of Windows 7 64-bit also installed smoothly and with no problems.&amp;#160; Windows 7 recognized all of my devices, including the &lt;a href="http://www.amazon.com/Hauppauge-1200-WinTV-HVR-850-Tuner/dp/B00169CDUY?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B00169CDUY"&gt;HVR-850&lt;/a&gt; TV tuner, the &lt;a href="http://www.monoprice.com/products/product.asp?c_id=105&amp;amp;cp_id=10501&amp;amp;cs_id=1050105&amp;amp;p_id=5337&amp;amp;seq=1&amp;amp;format=2"&gt;Monoprice Wireless Lan adapter&lt;/a&gt;, and the &lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;Lenovo Multimedia Remote&lt;/a&gt; with no problems, and without me having to manually install any drivers.&amp;#160; &lt;/p&gt;  &lt;h3&gt;Performance&lt;/h3&gt;  &lt;p&gt;I’ll go through and discuss my goals for this HTPC system one at a time, and how the system measures up against each goal.&lt;/p&gt;  &lt;h4&gt;Primary goal: Act as a DVR (record HD TV broadcasts, and playback HD video)&lt;/h4&gt;  &lt;p&gt;The primary goal for the this HTPC was to serve as my household’s primary (and only) DVR – to automatically “tape” (record) TV shows, and to play them back later on demand.&lt;/p&gt;  &lt;p&gt;The HTPC works great in this capacity.&amp;#160; The Windows Media Center software works very well.&amp;#160; I like it even better than the Tivo that I used for a while previously, due to being able to use the mouse in the Windows Media Center interface to quickly skip directly to a particular location in a show.&lt;/p&gt;  &lt;p&gt;The HTPC has no problem recording one show while playing back another.&amp;#160; In theory, I could in the future add a second TV tuner to the machine (another HVR-850 or a similar device), and be able to record two different shows simultaneously.&lt;/p&gt;  &lt;p&gt;It’s also worth mentioning that when Windows Media Center is recording a TV show, the impact on the HTPC’s resources (processor and memory) is negligible – the machine can be recording a show while at the same time running a game or other Windows applications, with no noticeable performance impact.&lt;/p&gt;  &lt;h4&gt;Secondary goal: Act as a secondary home PC&lt;/h4&gt;  &lt;p&gt;The goal here was to be able to close or minimize Window Media Center and drop back to the Windows desktop and use the HTPC like a regular PC – to browse the web, check email, and so forth.&amp;#160; &lt;/p&gt;  &lt;p&gt;The HTPC works great in this respect as well.&amp;#160; As mentioned above, the Radeon HD 4200 onboard video produces a great-looking signal on my Philips HDTV, with no overscan and very readable text.&amp;#160; Just last weekend, I used the HTPC in this capacity: I sat on the couch with my family, and used the HTPC to show on the TV screen a bunch of digital photos that my Dad had taken of the house he’s building in Florida.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Secondary goal: Play DVD movies&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Since my old DVD player died, I had been keeping my Playstation 2 hooked up to the TV mostly to act as a DVD player and play the occasional movie.&amp;#160; &lt;/p&gt;  &lt;p&gt;The HTPC works just fine for playing DVDs, so now I can replace the PS2 with some other device if the need arises.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Secondary goal: Play old NES / SNES / Nintendo 64 games&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;On occasion, I use my desktop PC to play via an emulator an old NES (Nintendo), SNES (Super Nintendeo), or Nintendo 64 cartridge that I own (and is stored away in my basement).&amp;#160; Playing these old games on a PC monitor while sitting in an office chair just isn’t quite the same as playing them on the TV while sitting back on the couch, though.&amp;#160; &lt;/p&gt;  &lt;p&gt;I haven’t spent a lot of time using the HTPC for retro console gaming aside from the initial round of testing yet, but the HTPC does work great for this.&amp;#160; Even the old NES and SNES games look really nice on the HDTV.&amp;#160; The image is really sharp, and there’s no blurring or aliasing.&amp;#160; &lt;/p&gt;  &lt;p&gt;The responsiveness of emulated games on the HTPC is also very snappy.&amp;#160; I was a bit concerned that there would be some small delay between doing an input on the controller and seeing the corresponding action happen in the game on the TV screen, but there has been no such delay; the games I’ve tried have responded instantly to controller input.&lt;/p&gt;  &lt;p&gt;I’m using an &lt;a href="http://www.amazon.com/Xbox-360-Controller/dp/B000B6MLTQ/ref=sr_1_3?ie=UTF8&amp;amp;s=electronics&amp;amp;qid=1274669956&amp;amp;sr=8-3"&gt;XBox 360 controller&lt;/a&gt; (which is compatible with Windows PCs via USB) as my controller, and it works pretty well for controlling old NES games.&amp;#160; At some point I’m planning to pick up an &lt;a href="http://www.amazon.com/Dual-Controller-Adapter-SNES-Super-Nintendo/dp/B002IXZ5DE?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B002IXZ5DE"&gt;SNES controller USB PC adapter&lt;/a&gt; and get my old SNES controllers out of storage to complete the retro gaming experience.&lt;/p&gt;  &lt;h4&gt;Secondary goal: Play new PC games / “Poor man’s XBox 360”&lt;/h4&gt;  &lt;p&gt;As with the Intel PC I tested with, I’ve tried two more “serious” modern games on the HTPC: World of Warcraft, and Batman Arkham Asylum.&lt;/p&gt;  &lt;p&gt;As with the Intel PC, World of Warcraft runs just fine on the HTPC in full 1920x1080 resolution, although not at the maximum graphics settings.&amp;#160; I’m not really planning on playing much Warcraft on this HTPC, but it’s nice to know that the game runs on the machine just fine, and I now have another PC that will run WoW in a pinch.&lt;/p&gt;  &lt;p&gt;Also as with the Intel PC, and also as expected, Batman Arkham Asylum runs, but so slowly that it isn’t really playable.&amp;#160; The Radeon HD 4200 onboard video isn’t up to the challenge of running a modern graphics-intensive game, even on the minimum settings.&amp;#160; An add-on video card will be an easy addition to the HTPC at some point in the future; I’m saving a full play-through of Batman for the time when I’ll finally be able to sit back on the couch and play through the game on the HDTV.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Secondary goal: Stream video between PCs&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;One thing that occurred to me that it would be nice to be able to do is to stream recorded video (TV shows) from the HTPC over to my desktop PC, for those (very unusual) occasions where Melissa and I both want to watch TV at the same time, and we don’t want to watch the same show.&lt;/p&gt;  &lt;p&gt;The software (Windows 7 and Windows Media Center) does support this functionality – I can fire up Windows Media Center on my desktop PC and see the shows that have been recorded on the HTPC.&amp;#160; Unfortunately – and this is the only “unexpected” issue that I have with my setup at the moment – when I try to playback a video over the network (even a standard-def video), the playback is extremely choppy, to the point of being unwatchable.&amp;#160; I did run this test over both of my other test machines (the converted 2004 machine, and the Intel test machine) so the problem is apparently my network setup, not the HTPC itself.&amp;#160; &lt;/p&gt;  &lt;p&gt;Both of my PCs are running USB 802.11g wireless adapters, and my router is a &lt;a href="http://www.amazon.com/Belkin-N-Wireless-Router-F5D8233-4/dp/B000RMPP5Q?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B000RMPP5Q"&gt;Belkin F5D8233-4 802.11n&lt;/a&gt;.&amp;#160; Unfortunately, my home is situated such that running a wired network isn’t really possible, so all of my machines are connected via wireless.&amp;#160; I suspect that streaming video (even full HD video) over a home wireless LAN should be possible, and that it’s some kind of problem with my network that’s preventing this from working for me, but I haven’t gotten this tracked down yet.&amp;#160; When I have an opportunity to do so, I’m going to try a different router and see if that does anything to improve the situation.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Tertiary goal: Run quietly&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;One final goal that I had for this HTPC is that it run quietly – I didn’t want to have to increase the volume of the TV at all just for the sake of having to compensate for a loud PC (particularly given that Melissa and I typically only ever sit down to watch TV when the kids are sleeping upstairs).&amp;#160; &lt;/p&gt;  &lt;p&gt;Fortunately, this HTPC build is indeed silent when it runs.&amp;#160; Even with the PC on and TV turned off, when sitting back on the couch, the PC fans are not audible whatsoever.&lt;/p&gt;  &lt;h3&gt;Conclusion&lt;/h3&gt;  &lt;p&gt;This HTPC build turned out to be a lengthy project, due to the methodical approach that I took to testing purchasing and testing components prior to doing the final parts purchase and build.&amp;#160; It was a lot of fun to work through the process, though, and it was a very good learning experience.&amp;#160; Best of all, I have an end result that I’m really happy with!&amp;#160; My family is very happy with our new HTPC/DVR as well.&amp;#160; (I can hear Melissa in the other room as I write this using the HTPC to watch the recording of the finale of “Lost” that started airing earlier tonight while we were still getting the kids to bed.)&lt;/p&gt;  &lt;p&gt;As a bonus, I didn’t spend &lt;em&gt;too &lt;/em&gt;much money to achieve the desired result!&amp;#160; Although the total cost of almost $500 up front was by no means trivial, it’s nice that, going forward, I will have a $0 “DVR fee” alongside my &lt;a href="http://blog.jonschneider.com/2009/12/going-cheap-on-services-and-liking-it.html"&gt;monthly $0 TV and $0 phone&lt;/a&gt; expenditures.&lt;/p&gt;  &lt;p&gt;This is the last of the primary posts in this series.&amp;#160; I will be writing at least one more follow-up post, though, covering my thoughts on the &lt;a href="http://www.amazon.com/Lenovo-Multimedia-Remote-with-Keyboard/dp/B0036VO67I?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0036VO67I"&gt;Lenovo Multimedia Remote &lt;/a&gt;with integrated trackball and keyboard that we’re using to control the HTPC from the couch.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6318583323256128258?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6318583323256128258/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6318583323256128258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6318583323256128258'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html' title='HTPC Build part 5 – Parts List! My $500 Windows 7 2010 HTPC'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8498737357738215904</id><published>2010-05-19T17:30:00.001-04:00</published><updated>2010-05-25T12:23:42.890-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='intel'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc-build-2010'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='tv'/><title type='text'>HTPC Build Part 4 - Testing an Intel-based HTPC</title><content type='html'>&lt;p&gt;&lt;em&gt;This is the forth in a series of posts I’m writing about an HTPC (Home Theatre PC) build that I recently completed.&amp;#160; To see a list of all posts in this series, &lt;/em&gt;&lt;a href="http://blog.jonschneider.com/search/label/htpc-build-2010"&gt;&lt;em&gt;click here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Before finalizing a parts list and placing an order for the parts for my new HTPC build, I was fortunate to be able to gain access to a &amp;quot;test machine&amp;quot;: A newly-built, working HTPC that my friend Dave was kind enough to let me borrow for a few days.&amp;#160; Specs on this machine:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="519" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;CPU&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="373"&gt;Intel Core 2 Quad&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;Motherboard&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="373"&gt;Intel BOXDG43GT LGA 775&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;Memory&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="373"&gt;2 GB Kingston DDR2-800&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;Onboard Video&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="373"&gt;Intel GMA X4500 with HDMI &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;Add-on Video Card&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="373"&gt;(None)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;Operating System&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="373"&gt;Windows 7 Home Premium 64-bit&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;I brought the Intel HTPC home and hooked it up to my TV, a Philips 3000 series LCD HDTV.&amp;#160; As with the &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html"&gt;old 2004 PC that I tested using as an HTPC&lt;/a&gt;, the Intel test PC had some pros and cons.&amp;#160; Pros first:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The PC ran very silently -- there was no noticeable fan noise at all while the machine was on. &lt;/li&gt;    &lt;li&gt;It was easy to connect the PC to the TV via the built-in HDMI port, and both video and sound output were transmitted from the PC to the TV via a single HDMI cable. &lt;/li&gt;    &lt;li&gt;No problems at all with HD video playback. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I ran into a significant problem, though: When rendering video output at the TV's native resolution (1920x1080), the rendered screen image was &amp;quot;too big&amp;quot; for the TV.&amp;#160; The edges of the Windows desktop, including the taskbar and Start button, were off the screen.&amp;#160; Those elements were still present -- I could move the mouse off the screen to where the Start button should be located, click, and (partially) see the Start menu appear -- I just couldn't see them.&lt;/p&gt;  &lt;p&gt;After spending a while trying to research this problem online but running into problems getting quality Google search results when trying to search using terms like &amp;quot;htpc tv image too large&amp;quot; or &amp;quot;tv display edges not visible&amp;quot; (and multiple other variants), I finally came across an article where I learned that there is a specific word for this phenomenon: &lt;a href="http://en.wikipedia.org/wiki/Overscan"&gt;Overscan&lt;/a&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;Now, searching with search terms including the word &amp;quot;overscan,&amp;quot; the quality of search results I was able to find markedly improved.&amp;#160; However, I was still unable to solve the problem; in several hours of trying, I was unable to correct for the overscan either from the PC side, or from the TV side.&lt;/p&gt;  &lt;p&gt;Most PC monitors include geometry controls that allow the screen image size, but there were no such controls available in the my TV's built in software menu.&amp;#160; In further poking around online, I found an &lt;a href="http://www.avsforum.com/avs-vb/showthread.php?t=761143"&gt;avsforum.com thread&lt;/a&gt; that described how to access a &amp;quot;secret&amp;quot; admin/service menu where additional TV controls could be accessed; I actually got this to work on my TV and accessed the TV menu (after bypassing a warning about possibly voiding my warranty -- the TV is out of warranty anyway), but on my TV, there were no geometry controls in the admin menu, either.&amp;#160; Finally, I tried to do a firmware update for the TV's software to see if a later version would have the geometry controls I was looking for, but the TV reported that it was already running the latest version of the software when I tried to apply the update via the TV's built-in USB port.&lt;/p&gt;  &lt;p&gt;I also investigated correcting the overscan on the PC end of things.&amp;#160; The Intel video card comes with software that allows a lower screen resolution to be sent to the monitor/TV to correct for overscan; however, whenever I tried to apply a &amp;quot;non-standard&amp;quot; lower resolution, the Intel software itself complained that the target resolution was not supported by my display.&amp;#160; Setting the screen to the next-lowest standard widescreen resolution (1680x1050) resulted in wide areas of black around all four edges of the display, so that wasn't a good solution either.&amp;#160; I tried updating to the latest version of the Intel video driver and video software utility package, but that didn't help either.&lt;/p&gt;  &lt;p&gt;So, I was left with the question of whether the overscan problem would be a deal-breaker for my intended uses of the HTPC.&amp;#160; My goals for the HTPC were as follows:&lt;/p&gt;  &lt;p&gt;Primary goal:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Be able to automatically record and playback HDTV program broadcasts.&amp;#160; (Tivo-like DVR functionality) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Secondary goals:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Be able to use the HTPC as a secondary home PC, i.e. to do things like browse the Web, check email, and view photos and videos. &lt;/li&gt;    &lt;li&gt;Be able to play DVD movies (and later, Blu-Ray movies, once the price of Blu-Ray optical drives drops). &lt;/li&gt;    &lt;li&gt;Be able to play old NES, SNES, and N64 games that I own the cartridges for (via emulation). &lt;/li&gt;    &lt;li&gt;Be able to play newer games while sitting on the couch and using my XBox 360 controller for PC -- have the HTPC act as a &amp;quot;poor man's XBox 360.&amp;quot; (Ironically, though, an actual XBox 360 now retails for significantly less than my overall budget for the HTPC!) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;With respect to the primary goal of playing back HDTV content, I needed to be able to use the Windows Media Center (WMC) interface in order to accomplish this.&amp;#160; With the overscan problem, several of the key UI elements of Windows Media Center appeared off the screen.&amp;#160; However, I found a post on Aaron Stebner's WebLog detailing a series of &lt;a href="http://blogs.msdn.com/astebner/archive/2006/04/29/586961.aspx"&gt;registry keys that can control advanced options in Windows Media Center&lt;/a&gt;.&amp;#160; Using these registry tweaks, I was able to get WMC to &amp;quot;pull in&amp;quot; from the screen edges its various UI elements, such that everything was visible on my screen, even with the overscan.&amp;#160; Pretty cool.&lt;/p&gt;  &lt;p&gt;However, I had no such luck with applications outside of Windows Media Center.&amp;#160; With the Windows taskbar, the Start button, and the edges of the Windows desktop being out of view, using the HTPC as a regular Windows PC wasn't a very nice experience.&amp;#160; &lt;/p&gt;  &lt;p&gt;I also encountered one other problem: On the Windows desktop, thin black lines (such as &amp;quot;divider lines&amp;quot; in various applications) sometimes rendered on screen with quite a bit of &amp;quot;flicker&amp;quot;.&amp;#160; This didn't make the display unusable, but it was pretty annoying to look at.&lt;/p&gt;  &lt;p&gt;Between the overscan problem and the &amp;quot;flicker&amp;quot; problem, I made a decision not to go with an onboard Intel video card for my final HTPC build.&amp;#160; Having had good experiences with ATI video cards in the past, I decided I would instead go with an AMD-based build including an onboard ATI video card. (The &lt;a href="http://www.amd.com/us-en/Corporate/VirtualPressRoom/0,,51_104_543~110899,00.html"&gt;processor company AMD acquired the video card company ATI back in 2006&lt;/a&gt;, so now AMD is presumably using the solid ATI technology in its onboard video cards.)&lt;/p&gt;  &lt;p&gt;I did also do some testing with the Intel machine with my secondary goals in mind.&amp;#160; Old NES and SNES games ran just fine on the PC via emulation; I was worried there might be some lag time between controller button presses and the responsiveness of the games, but there was no noticeable lag at all, and the games I tested were very playable.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;img title="WoW_OverscanCrop2" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="260" alt="WoW_OverscanCrop2" src="http://jonschneider.com/images/jsblog/HTPCBuildPart4TestinganIntelbasedHTPC_14AD3/WoW_OverscanCrop2.jpg" width="424" align="right" border="0" /&gt; I also tested a couple of newer games: World of Warcraft, and Batman Arkham Asylum.&amp;#160; Warcraft (being a 5-year-old game at this point) ran quite acceptably when configured to use lower-end video settings.&amp;#160; However, the game was affected by the overscan issue, making the action button bar at the bottom of the game window partially invisible, resulting in the game being not very playable, at least in full-screen mode.&amp;#160; (The screen capture at right approximates what I was seeing on my HDTV in terms of the game image being clipped.)&lt;/p&gt;  &lt;p&gt;Batman Arkham Asylum, a newer game, ran on the PC, but the game ran &lt;em&gt;very &lt;/em&gt;slowly, even on minimum video settings.&amp;#160; Although the game ran, it wasn't really playable.&amp;#160; Somewhat interestingly, rather than drop frames and run at normal speed but with a poor framerate, the game just slowed down the overall gameplay to match the throughput that the video card was able to produce -- the end result was although the display was smooth, the game just ran at about 50% of normal speed (so it took Batman an unusually long time to walk from place to place, etc.).&amp;#160; &lt;/p&gt;  &lt;p&gt;The poor performance of the Batman game was actually in line with my expectations: I didn't expect the onboard video card to be performant for high-end gaming.&amp;#160; My plan at this point is to run with only onboard video for the time being (sacrificing the goal of being able to use the HTPC as a &amp;quot;poor man's XBox 360&amp;quot;); at some point in the future, I'll purchase an add-on video card for the machine (or maybe, I'll purchase a new video card for my primary desktop PC, and do a hand-me-down of that PC's old video card to the HTPC).&lt;/p&gt;  &lt;p&gt;The &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html"&gt;next post&lt;/a&gt; in this series will (finally!) cover my final &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-5-parts-list-my-500.html"&gt;HTPC parts list&lt;/a&gt;, and my experiences with the completed build.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8498737357738215904?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8498737357738215904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8498737357738215904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8498737357738215904'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html' title='HTPC Build Part 4 - Testing an Intel-based HTPC'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8991207376376601197</id><published>2010-05-18T23:30:00.001-04:00</published><updated>2010-05-25T12:24:40.164-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='windows media center'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc-build-2010'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>HTPC Build part 3 – My attempt to turn a 2004 PC into an HTPC</title><content type='html'>&lt;p&gt;&lt;em&gt;This is the third in a series of posts I’m writing about an HTPC (Home Theatre PC) build that I recently completed.&amp;#160; To see a list of all posts in this series, &lt;/em&gt;&lt;a href="http://blog.jonschneider.com/search/label/htpc-build-2010"&gt;&lt;em&gt;click here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Rather than ordering all of the parts to build a new HTPC at once, I decided to try turning my old (built in 2004) desktop PC into an HTPC.&amp;#160; The hard drive on that PC had died, but the remaining parts were still in good working order.&amp;#160; The pertinent specs on the machine were:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="401" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="109"&gt;&lt;strong&gt;CPU&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="290"&gt;AMD Athlon XP 2800+&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="109"&gt;&lt;strong&gt;Memory&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="290"&gt;1 GB DDR SDRAM&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="109"&gt;&lt;strong&gt;Video&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="290"&gt;Radeon 9800 AGP 128 MB&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Since the old hard drive on the machine had died, and I wanted a large enough disk to have sufficient room to record a good quantity of hours of HD video, I went ahead and ordered a new 640 GB SATA hard drive ($70 shipped from &lt;a href="http://www.newegg.com/"&gt;newegg.com&lt;/a&gt;). &lt;/p&gt;  &lt;p&gt;One problem with this was that the old PC motherboard supported only IDE drives, not SATA.&amp;#160; (SATA is the current standard for desktop PC drives; IDE is an older standard that was still in wide use back in 2004.)&amp;#160;&amp;#160; I did want a SATA hard drive, though, just in case the “refurbish the old PC” plan didn’t work out, and I ended up building a whole new PC.&amp;#160; I solved this problem by picking up a SATA-IDE converter for less than $3 shipped off eBay.&lt;/p&gt;  &lt;p&gt;I also knew that I would need a method to get video and sound from the old PC to my HDTV.&amp;#160; The Radeon 9800 video card in the machine supported DVI video out, so I purchased a &lt;a href="http://www.meritline.com/dvi-male-hdmi-female-adapter-464---p-30315.aspx"&gt;DVI-HDMI adapter&lt;/a&gt; for $2 shipped (on sale) from &lt;a href="http://meritline.com/"&gt;meritline.com&lt;/a&gt;.&amp;#160; For the sound, I bought a 3.5mm to RCA Y audio adapter cable off &lt;a href="http://www.ebay.com/"&gt;eBay&lt;/a&gt; for $1.28 shipped.&amp;#160; (I continue to be pleasantly surprised how inexpensively it’s possible to purchase and have shipped simple parts like cables and adapters via online merchants!)&lt;/p&gt;  &lt;p&gt;In addition to holding off for the time being on further significant hardware purchases, I did not buy an additional copy of Windows 7 at this point.&amp;#160; Instead, the plan was to install Windows 7 without entering a license key; Windows will run on a time-limited basis with no key, so I planned to test my hardware configuration first, and then purchase the additional Windows 7 license once I had proved that everything worked.&lt;/p&gt;  &lt;p&gt;I went ahead and put the new SATA hard drive into the old PC; the SATA-IDE adapter ended up working just fine.&amp;#160; I fired up the PC and installed Windows 7.&amp;#160; Windows 7 installed with no problems, even on the older hardware.&amp;#160; (I did have to install 32-bit Windows 7, since the older hardware didn’t support 64-bit.)&lt;/p&gt;  &lt;p&gt;At this point, I disconnected the spare VGA monitor that I had been using for the Windows 7 install, and hooked up the PC to my HDTV via the adapter cables I had purchased.&amp;#160; I then spent a few hours testing the system – with decidedly mixed results.&amp;#160; &lt;/p&gt;  &lt;p&gt;First, the positives:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Even on the old hardware, Windows 7 actually ran reasonably well.&amp;#160; &lt;/li&gt;    &lt;li&gt;Audio and video output from the PC worked on the TV, and I was able to run the TV at its native video resolution of 1920x1080. &lt;/li&gt;    &lt;li&gt;Playback of the short sample HD video clip that comes with Windows Media Center worked okay (although playback was a bit choppy for the first 2 or 3 seconds each time the clip started). &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I ran into some significant problems, though:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Video playback: Occasionally the video output from the PC displayed on the TV screen would either “freeze” (stop updating), or simply go black.&amp;#160; Unplugging and re-plugging the HDMI cable would fix this, but the problem occurred fairly frequently – every 20-30 minutes or so – and I wasn’t about to settle for a solution where I’d need to be replugging the cable all the time.&amp;#160; Changing channels on the TV (away from the “HDMI 1” input and then back again), or turning the TV off and then back on, would &lt;em&gt;not&lt;/em&gt; fix this problem.&amp;#160; (I didn’t make a clear determination whether it was the old video card, or the DVI-HDMI adapter, that was to blame for the issue.) &lt;/li&gt;    &lt;li&gt;Video display: Text rendered by Windows applications running on the TV display was very “clipped” and difficult to read.&amp;#160; Increasing the system-wide font size to 150% and playing with the &lt;a href="http://www.microsoft.com/typography/cleartype/tuner/tune.aspx"&gt;ClearType Tuner&lt;/a&gt; helped with this somewhat, but text shown on the display still wasn’t very nice-looking. &lt;/li&gt;    &lt;li&gt;Sound input: The PC did not output sound over the DVI/HDMI cable; it was necessary to use the RCA audio cable that I had purchased to get sound to output via the TV.&amp;#160; Further, my TV doesn’t have dedicated RCA audio inputs that go with the HDMI input; I was able via the TV’s own menu software to “remap” the “AV 1” (component video) audio inputs to the “HDMI 1” channel, but this meant that I needed to disconnect the audio cables for the device that I had connected to the “AV 1” input (my Wii) – not a situation I was pleased with. &lt;/li&gt;    &lt;li&gt;PC speed: Although HD video playback was possible, using the PC generally felt sluggish.&amp;#160; This was somewhat to be expected given the old hardware, but using Windows 7 on the old hardware wasn’t really a great experience.&amp;#160; One example is that it took several seconds to Alt+Tab (switch programs) between Windows Media Center and the Windows desktop. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;After several hours of playing with the machine, based on the multiple problems I encountered, I made the call to abort the idea of using the old hardware for my HTPC.&amp;#160; Even though the idea of refurbishing my old PC didn’t work out, it had still been an interesting experiment; I had proven that I could get a Windows desktop to display on my TV, and gained an idea of what I could expect as a minimum baseline for an HTPC’s performance.&amp;#160; &lt;/p&gt;  &lt;p&gt;The next step would be to go ahead and invest in a set of new parts, and build a new machine.&amp;#160; The new HTPC would be built with the new SATA hard drive I had already bought, and a new motherboard and processor that I would purchase.&lt;/p&gt;  &lt;p&gt;The &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html"&gt;next post&lt;/a&gt; in this series will cover the results some &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-4-testing-intel-based.html"&gt;testing I did with a loaner Intel-based HTPC&lt;/a&gt; that I borrowed from a friend of mine, as a last step towards a final determination on the parts list for my new HTPC build.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8991207376376601197?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8991207376376601197/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8991207376376601197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8991207376376601197'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html' title='HTPC Build part 3 – My attempt to turn a 2004 PC into an HTPC'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-840506423725122392</id><published>2010-05-17T23:12:00.001-04:00</published><updated>2010-05-25T12:22:38.751-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='windows media center'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc-build-2010'/><category scheme='http://www.blogger.com/atom/ns#' term='tv'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>HTPC Build Part 2 – Testing a PC TV Tuner and Windows Media Center</title><content type='html'>&lt;p&gt;&lt;em&gt;This is the second in a series of posts I’m writing about an HTPC (Home Theatre PC) build that I recently completed.&amp;#160; To see a list of all posts in this series, &lt;/em&gt;&lt;a href="http://blog.jonschneider.com/search/label/htpc-build-2010"&gt;&lt;em&gt;click here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Having gotten &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-1-diy-antenna.html"&gt;free HDTV via my DIY antenna&lt;/a&gt; working nicely, I decided to purchase a TV tuner and try it out with my existing PC running Windows 7 (and therefore also &lt;a href="http://www.microsoft.com/windows/windows-media-center/"&gt;Windows Media Center&lt;/a&gt;), before making the full investment in a complete set of parts for a new HTPC. &lt;/p&gt;  &lt;p&gt;I found a a pretty good &lt;a href="http://www.microsoft.com/windows/windows-media-center/learn-more/VideoPlayer.aspx?path=mms://msvcatalog-3.wmod.llnwd.net/a2249/e1/ft/share8/3bc6/0/Watch_and_Record_Broadcast_TV.wmv"&gt;overview video&lt;/a&gt; from Microsoft describing what it takes to hook a TV tuner card up to a PC.&amp;#160; Doing this on a PC running Windows 7 enables the ability to be able to watch live broadcast TV on the PC monitor.&amp;#160; It also enables Windows to record broadcast TV like a TiVo or similar DVR device – with no monthly fee!&amp;#160; (There are some free software packages for Linux that have similar functionality, but Windows is my preferred OS, so I decided to go with Microsoft’s software solution.)&lt;/p&gt;  &lt;p&gt;&lt;img title="HVR-850" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="136" alt="HVR-850" src="http://jonschneider.com/images/jsblog/HVR850_144C9/HVR850.jpg" width="240" align="right" border="0" /&gt; After doing some research, I decided to purchase an &lt;a href="http://www.amazon.com/Hauppauge-1200-WinTV-HVR-850-Tuner/dp/B00169CDUY?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B00169CDUY"&gt;HVR-850&lt;/a&gt; USB-connection PC TV tuner by &lt;a href="http://www.hauppauge.com/"&gt;Hauppauge&lt;/a&gt;.&amp;#160; This tuner is compatible with over-the-air HDTV (ATSC) signals, and is certified to work with Windows 7.&amp;#160; I paid about US $55 for mine (and as of the time of this writing, it’s going for &lt;a href="http://www.amazon.com/Hauppauge-1200-WinTV-HVR-850-Tuner/dp/B00169CDUY?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B00169CDUY"&gt;$55 shipped on Amazon&lt;/a&gt;).&amp;#160; (Note: This model isn’t compatible with some other types of TV signals such as “Clear QAM” from a set-top cable box; for that, you’d need a higher-end tuner part like the &lt;a href="http://www.amazon.com/Hauppauge-WinTV-HVR-950Q-Personal-Recorder-Control/dp/B001DEYVXO?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B001DEYVXO"&gt;HVR-950&lt;/a&gt;.)&lt;/p&gt;  &lt;p&gt;Unfortunately, the HVR-850 unit that I received was &lt;acronym title="dead on arrival"&gt;DOA&lt;/acronym&gt;. I plugged it in to my PC, and Windows 7 recognized the device right away, no driver install needed.&amp;#160; However, upon connecting the HVR-850 via the standard coax cable connection to my antenna and then scanning for over-the-air channels in Windows Media Center, the device wouldn’t find any channels.&amp;#160; I fiddled with the HVR-850 for quite a while, but just couldn’t get it to work.&amp;#160; Finally I had the idea to hook my old NES up to the HVR-850.&amp;#160; The output from the NES was just barely visible on the computer screen through heavy static/snow, and the music from the game was also just barely audible through heavy static/snow as well.&amp;#160; Therefore I concluded that the HVR-850 was “working” in that it was in fact sending some TV signal to the PC; it was just working very poorly!&amp;#160; Apparently I just had gotten a bad HVR-850 unit.&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;I contacted Hauppauge tech support, and they agreed based on my reported observed behavior that my HVR-850 was probably bad, and to &lt;a href="http://en.wikipedia.org/wiki/Return_merchandise_authorization"&gt;RMA&lt;/a&gt; the unit under the warranty.&amp;#160; I got my replacement HVR-850 several days later, and this time, it worked like a charm!&amp;#160; Windows 7 once again recognized the part right away, and I was able to successfully watch live TV on my PC of the same TV channels that I could get on my regular TV.&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;I tested the DVR functionality of Windows Media Center (WMC) for a couple of weeks, and that worked great as well.&amp;#160; As with the TiVo I’d used previously, it was easy to select a set of shows to record, and have them record automatically.&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;A cool feature of Windows Media Center is that while watching a program, you can easily drag the current time index of the show back and forth using the mouse, and while doing so, WMC gives you a picture-in-picture indication of what is at the target location.&amp;#160; This makes it really easy to jump to a particular point of a show, and to quickly skip commercials.&amp;#160; It’s nice that Windows Media Center supports control of the software via either a mouse, or via a TV remote control.&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;At this point, I had effectively turned my primary PC into a fully-functional DVR, for just the $55 incremental purchase of the PC TV tuner above and beyond the cost of the PC hardware and software that I already owned.&amp;#160; Not bad!&amp;#160; However, while watching TV sitting in my office chair at my desk is okay, watching TV on my actual television while sitting on my couch in my living room would be much better!&amp;#160; So, having proven that the Windows 7 DVR software in Windows Media Center and the HVR-850 TV Tuner worked well, I decided to proceed with the next step of going ahead and actually assembling an HTPC for my living room.&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html"&gt;Part 3&lt;/a&gt; in this series will cover my attempt to save some money on parts by trying &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-3-my-attempt-to-turn.html"&gt;to turn my old 2004 desktop PC into an HTPC&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-840506423725122392?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/840506423725122392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-2-testing-pc-tv-tuner.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/840506423725122392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/840506423725122392'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-2-testing-pc-tv-tuner.html' title='HTPC Build Part 2 – Testing a PC TV Tuner and Windows Media Center'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5244833356205991650</id><published>2010-05-16T23:49:00.001-04:00</published><updated>2010-05-25T12:21:08.658-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='household'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc-build-2010'/><category scheme='http://www.blogger.com/atom/ns#' term='tv'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><title type='text'>HTPC Build Part 1 – Constructing and Installing a DIY Antenna</title><content type='html'>&lt;p&gt;&lt;em&gt;This is the first in a series of posts I’m writing about an HTPC (Home Theatre PC) build that I recently completed.&amp;#160; To see all posts in the series, &lt;/em&gt;&lt;a href="http://blog.jonschneider.com/search/label/htpc-build-2010"&gt;&lt;em&gt;click here&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;As I’ve mentioned in a &lt;a href="http://blog.jonschneider.com/2009/12/going-cheap-on-services-and-liking-it.html"&gt;previous post on inexpensive home services&lt;/a&gt;, I’ve been getting High Definition (HD) TV at home for free via an over-the-air antenna for several months now.&amp;#160; (In most markets in the U.S., since the &lt;a href="http://en.wikipedia.org/wiki/Digital_television_transition_in_the_United_States"&gt;2009 digital transition&lt;/a&gt;, the major network channels, and often several others, are available 100% legally for free, in HD, via over-the-air broadcast.)&amp;#160; This has been worked great for me, particularly for the price tag ($0/month!), but not perfectly: With my cheap $20 small store-bought antenna positioned next to my TV on the lower level of my home, I could not get the local &lt;a href="http://www.pbs.org/"&gt;PBS&lt;/a&gt; station, and I had to position the antenna just right to get several other stations (and reposition it whenever anything bumped the antenna).&lt;/p&gt;  &lt;p&gt;I set for myself a goal of getting high-quality (strong signal / reliable), hi-def TV into my home, and recording that TV via a DVR (digital video recorder) of some kind, while still maintaining a monthly TV/DVR payment $0.&amp;#160; (If this turned out to be unachievable, I set a fallback plan of getting TV service through one of the satellite TV companies; but even a “cheap” price tag of $25/month ($300/year) was somewhat unpalatable to me compared to a potential payment of $0/year!)&lt;/p&gt;  &lt;p&gt;My first step towards this goal was to fix the situation with the reception.&amp;#160; According to the &lt;a href="http://www.fcc.gov/mb/engineering/maps/"&gt;Digital TV reception map&lt;/a&gt; at ftc.gov, I should be able to get a strong PBS signal at my location.&amp;#160; My wife and I were very interested in getting PBS due to the good amount of high-quality kids’ programming on that station.&lt;/p&gt;  &lt;p&gt;I got several quotes from area companies to install a roof-mounted or in-attic antenna.&amp;#160; All of the quotes came back for north of $500, which was more than I was willing to pay, so I started looking into other antenna solutions.&lt;/p&gt;  &lt;p&gt;Poking around online, I came across some &lt;a href="http://blog.makezine.com/archive/2009/01/maker_workshop_dtv_antenna_steadyca.html"&gt;interesting plans for a Do-It-Yourself (DIY) antenna&lt;/a&gt; on makezine.com.&amp;#160; The plans involved basically assembling a small vertical frame out of wood and a metal pipe, then using pieces from some old wire hangers that are already around the house to form the actual antenna.&amp;#160; When it comes to things other than computers, I’m not exactly a big do-it-yourself guy.&amp;#160; However, these plans seemed simple to do and inexpensive in terms of parts, and there were quite a few very positive comments/reviews on the makezine.com article on the design, so I decided to give it a shot.&lt;/p&gt;  &lt;p&gt;Including a trip to the hardware store, the DIY antenna took about $30 in parts and about 4-5 hours of my time to construct.&amp;#160; (I suspect someone used to building this type of thing could have completed the project a lot faster.)&amp;#160; I set the antenna next to my TV and hooked it up, and it worked very nicely!&amp;#160; All of the stations that I already got (including HD signals from the major networks ABC, NBC, CBS, and FOX, as well as many other high-def and standard-def channels) came in better than before.&amp;#160; &lt;/p&gt;  &lt;p&gt;However, at this point, I didn’t get PBS.&amp;#160; The next step was to try hooking the antenna up on the second floor of my two-story house, since antennas are supposed to work better when they are positioned higher up relative to ground level.&amp;#160; &lt;/p&gt;  &lt;p&gt;Most of the rooms in my house are wired for cable; however, all of the cables in the basement were unlabeled.&amp;#160; Going around my house to one cable jack at a time, I used a little ball of aluminum foil to “short out” the end of a short piece of coax cable connected to the jack, and then I was able to use an ohmmeter to identify the corresponding end of the same cable in the basement utility room.&amp;#160; &lt;/p&gt;  &lt;p&gt;Having identified and labeled all of the cables in the basement, I used a connector to directly connect my TV-room cable to my master bedroom cable down in the utility room in the basement.&amp;#160; Then I carried the DIY antenna up to the master bedroom, and tried the TV channels again.&amp;#160; Success – I was now able to get PBS, in great-looking HD!&lt;/p&gt;  &lt;p&gt;The final step for the antenna was to install it up in the attic.&amp;#160; I extended the coax cable from my master bedroom (since I intentionally do not, and will not, have a TV in there) up into the attic.&amp;#160; Then I carried the antenna up into the attic, and hooked it up.&amp;#160; I positioned the antenna in the attic by having my wife watch TV and report on how the signal was doing, while I talked to her via our home wireless phones, and made adjustments according to her feedback.&amp;#160; Having found a position where all stations came in great, I left the antenna up in the attic, and closed the attic up again.&amp;#160; &lt;/p&gt;  &lt;p&gt;End result: Great-looking and reliable high-definition TV, with my TV simply connected to the wall cable jack.&amp;#160; If you’re looking for a fun DIY project with the end result of getting free, totally legal HD network TV plus more stations, I can recommend giving the makezine.com &lt;a href="http://blog.makezine.com/archive/2009/01/maker_workshop_dtv_antenna_steadyca.html"&gt;DIY antenna plans&lt;/a&gt; a shot!&lt;/p&gt;  &lt;p&gt;The &lt;a href="http://blog.jonschneider.com/2010/05/htpc-build-part-2-testing-pc-tv-tuner.html"&gt;next post in this series&lt;/a&gt; will cover my purchase of a PC TV tuner, and trying it out with the DVR software included out-of-the-box with Windows 7, called Windows Media Center.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5244833356205991650?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5244833356205991650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-1-diy-antenna.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5244833356205991650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5244833356205991650'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/05/htpc-build-part-1-diy-antenna.html' title='HTPC Build Part 1 – Constructing and Installing a DIY Antenna'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8007425409712559761</id><published>2010-04-13T23:50:00.001-04:00</published><updated>2010-04-13T23:51:36.927-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='podcasts'/><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='ipod'/><category scheme='http://www.blogger.com/atom/ns#' term='rss'/><title type='text'>Use your mp3 player to listen to podcasts instead of talk radio on your commute</title><content type='html'>&lt;p&gt;I have a 15-minute commute by car to work – so that’s about 2.5 hours I spend in the car going to and from work on a typical week.&amp;#160; Occasionally I listen to music in the car, but most often I prefer listening to talk.&amp;#160; Historically, I would typically listen to AM radio on the commute: sports, news, or just whatever was on any station I could find that wasn’t on commercial.&lt;/p&gt;  &lt;p&gt;For the past couple of years, though, I’ve listened to podcasts on the commute instead.&amp;#160; For anyone unfamiliar with the term, a typical podcast is essentially a talk radio show that you can download online for free, and listen to on an mp3 player.&lt;/p&gt;  &lt;p&gt;Listening to podcasts have several significant advantages over AM radio:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Choice of Topic.&amp;#160; &lt;/strong&gt;At any given time, there are only a few topics available to listen to on talk radio shows.&amp;#160; By contrast, there are a podcasts on a multitude of topics available for free download online.&amp;#160; I’ve replaced listening to general news and sports talk on my commute with topics that are specifically of interest to me, like software engineering, Christian apologetics, and video games.&amp;#160; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;On-Demand / Pauseable.&lt;/strong&gt;&amp;#160; With a podcast, the show starts exactly when I sit down in my car in the morning.&amp;#160; And when there’s something interesting being discussed as I arrive at work, instead of missing the end of the discussion, I can just pause my mp3 player, and pick up the show right where I left off when I begin my commute home in the afternoon.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Limited or No Commercials.&amp;#160; &lt;/strong&gt;Whereas a typical radio station plays commercials as much as &lt;a href="http://en.wikipedia.org/wiki/Radio_advertisement"&gt;15% of the time or more&lt;/a&gt;, many podcasts are produced on a volunteer basis and are totally commercial-free.&amp;#160; In my experience, in those podcasts that do run ads, the ads are fairly limited.&amp;#160; And as a last resort, you can always skip past any particularly intrusive commercials that do happen to be present using the fast-forward function on your mp3 player!&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;My current mp3 player is an Apple iPod, so I use Apple’s iTunes software to subscribe to podcasts, and have the latest episodes automatically download to my PC.&amp;#160; Then, when I sync my iPod with my PC (which I typically do once a week or so), I get several new episodes of my favorite podcasts to listen to on my commute over the next several days.&amp;#160; Easy!&amp;#160; (If you don’t have an iPod, there are several free RSS software packages out there that support audio files that you can use to subscribe to podcasts, and have the .mp3 files automatically download for you.)&lt;/p&gt;  &lt;p&gt;The only remaining challenge, then, is how to get the mp3 player output to play through the car speakers (since it’s for obvious reasons dangerous, and apparently in many places illegal, to drive while wearing headphones).&amp;#160; With an older car, you can get an inexpensive device that converts an audio cassette player into a line-in jack for an mp3 player.&amp;#160; Many newer cars these days come with a line-in jack built directly into the stereo system.&lt;/p&gt;  &lt;p&gt;However, I drive a model year 2005 car that has neither a line-in jack nor a cassette player.&amp;#160; The solution I landed on for listening to my iPod in my car was a &lt;a href="http://www.amazon.com/Griffin-iTrip-Transmitter-Charger-Black/dp/B000BWACX2?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B000BWACX2"&gt;Griffin iTrip FM Transmitter / Charger&lt;/a&gt;.&amp;#160; The device is essentially a short-range FM transmitter does a a short-range FM radio broadcast of whatever is playing on your iPod, using an FM frequency that is unused in your area (a frequency that you specify).&amp;#160; Then, you just tune your car radio to that same FM frequency, and you can hear your iPod podcast (or music) over your car’s stereo system!&amp;#160; &lt;/p&gt;  &lt;p&gt;I’ve actually bought two copies of the iTrip device – one back in late 2007 for myself, and a second one a year ago for my wife.&amp;#160; Both devices are still in great working condition.&amp;#160; Although the iTrip has an MSRP of US $70, it’s currently going for about &lt;a href="http://www.amazon.com/Griffin-iTrip-Transmitter-Charger-Black/dp/B000BWACX2?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B000BWACX2"&gt;$34 shipped&lt;/a&gt; on Amazon.com as I write this.&amp;#160; Highly recommended, particularly at that reasonable price.&lt;/p&gt;  &lt;p&gt;Finally, a brief plug for a specific podcast: If you’re into video games, check out the &lt;a href="http://www.gamerswithjobs.com/podcast"&gt;Gamers With Jobs podcast&lt;/a&gt;.&amp;#160; It’s a group of a few adult gamers that talk weekly about current games (across all of the major console platforms and the PC), and interesting gaming-related topics.&amp;#160; The group has great chemistry and the show is often pretty funny.&amp;#160; And it’s commercial-free!&amp;#160; It’s my favorite podcast.&lt;/p&gt;  &lt;p&gt;So – try making your daily commute time more interesting and/or productive by listening to a podcast on a topic of interest to you while you’re driving back and forth to work, instead of just defaulting to whatever happens to be on the radio!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8007425409712559761?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8007425409712559761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/04/use-your-mp3-player-to-listen-to.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8007425409712559761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8007425409712559761'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/04/use-your-mp3-player-to-listen-to.html' title='Use your mp3 player to listen to podcasts instead of talk radio on your commute'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3309024350797114965</id><published>2010-03-11T15:33:00.001-05:00</published><updated>2010-03-11T15:36:18.558-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='character encoding'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Issue: Non-ASCII characters change to inverted question mark (“¿”) after save</title><content type='html'>&lt;p&gt;I was recently entering some content into a &lt;a href="http://www.atlassian.com/software/confluence/"&gt;Confluence wiki&lt;/a&gt; page that included some non-ASCII characters, such as “→” (&lt;a href="http://www.fileformat.info/info/unicode/char/2192/index.htm"&gt;U+2192, &amp;quot;RIGHTWARDS ARROW&amp;quot;&lt;/a&gt;) and “←” (&lt;a href="http://www.fileformat.info/info/unicode/char/2190/index.htm"&gt;U+2190, LEFTWARDS ARROW&lt;/a&gt;).&amp;#160; (I can easily type those characters using Alt+Numpad 26 and Alt+Numpad 27 respectively, since my Windows XP machine is set to &lt;a href="http://en.wikipedia.org/wiki/Code_page_437"&gt;Code page 437&lt;/a&gt;.) However, after saving the document and coming back and looking at it later, all such characters had been changed to inverted (upside down) question mark characters, “¿”.&lt;/p&gt;  &lt;p&gt;Investigation revealed that the problem was that the underlying Oracle database to which the content was being saved was set to use the Western European character set &lt;a href="http://en.wikipedia.org/wiki/ISO/IEC_8859-1"&gt;ISO-8859-1&lt;/a&gt;, as opposed to a more comprehensive character encoding such as &lt;a href="http://en.wikipedia.org/wiki/UTF-8"&gt;UTF-8&lt;/a&gt;.&amp;#160; Since ISO-8859-1 doesn’t include the “leftwards arrow” or “rightwards arrow” characters, Oracle converted those characters to the inverted question mark instead.&lt;/p&gt;  &lt;p&gt;I wanted to share this here since this information might be helpful to anyone encountering a similar issue in a variety of different possible applications, not necessarily just Confluence.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3309024350797114965?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3309024350797114965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/03/issue-non-ascii-characters-change-to.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3309024350797114965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3309024350797114965'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/03/issue-non-ascii-characters-change-to.html' title='Issue: Non-ASCII characters change to inverted question mark (“¿”) after save'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4105825775072055581</id><published>2010-03-03T12:30:00.001-05:00</published><updated>2010-03-03T12:31:14.671-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='jboss'/><title type='text'>Fix: Error starting JBoss: “Please check that you are in the bin directory when running this script.”</title><content type='html'>&lt;p&gt;I’m currently attending a developer training class on a Java application that runs on the &lt;a href="http://www.jboss.org/"&gt;JBoss application server&lt;/a&gt;.&amp;#160; When running a .bat script provided by the trainer on my Windows XP machine that is supposed to start JBoss (among other things), I and several others in the class were having the script fail with this error:&lt;/p&gt; &lt;tt&gt;Could not locate C:\&lt;i&gt;path&lt;/i&gt;\bin\run.jar. Please check that you are in the bin directory when running this script.&lt;/tt&gt;   &lt;p&gt;The &lt;em&gt;path&lt;/em&gt; from the error message was not the correct JBoss directory containing &lt;tt&gt;run.jar&lt;/tt&gt;, &lt;tt&gt;jboss-4.2.0.GA\bin&lt;/tt&gt;, but a different directory. Searching through the files on my local machine revealed that this error message was coming out of the &lt;tt&gt;run.bat&lt;/tt&gt; file in that same &lt;tt&gt;jboss-4.2.0.GA\bin&lt;/tt&gt; folder. &lt;/p&gt;  &lt;p&gt;Looking at the source of &lt;tt&gt;run.bat&lt;/tt&gt;, the script attempts to create and set a Windows environment variable named &lt;tt&gt;JBOSS_HOME&lt;/tt&gt;. I noticed two lines in particular near the beginning of the file:&lt;/p&gt;  &lt;pre&gt;if &amp;quot;%OS%&amp;quot; == &amp;quot;Windows_NT&amp;quot; set DIRNAME=%~dp0%
...
if &amp;quot;%OS%&amp;quot; == &amp;quot;Windows_NT&amp;quot; set PROGNAME=%~nx0%&lt;/pre&gt;

&lt;p&gt;From other parts of &lt;tt&gt;run.bat&lt;/tt&gt;, I suspected that the root cause of the problem was that &lt;tt&gt;DIRNAME&lt;/tt&gt; was not being set correctly. &lt;/p&gt;

&lt;p&gt;From a command prompt, I ran &amp;quot;&lt;tt&gt;echo %OS%&lt;/tt&gt;&amp;quot; (no quotes) -- this returned a value of &lt;tt&gt;WINNT&lt;/tt&gt; -- not a value of &lt;tt&gt;Windows_NT&lt;/tt&gt; as expected by the script.&lt;/p&gt;

&lt;p&gt;Oddly enough, in the Environment Variables dialog in the Control Panel, the &lt;tt&gt;OS&lt;/tt&gt; variable &lt;i&gt;is&lt;/i&gt; set to &lt;tt&gt;Windows_NT&lt;/tt&gt; -- the value is apparently being overridden by something else running on my machine. From talking to others in the training class, who had the script work from home but not while at the office, the override is apparently being done by one of the login scripts that automatically runs at when we log in to the corporate network.&lt;/p&gt;

&lt;p&gt;In any event, the solution/workaround that we came up with was simply to edit &lt;tt&gt;run.bat&lt;/tt&gt; and remove the OS check in the two above-mentioned lines, resulting in the following:&lt;/p&gt;

&lt;pre&gt;set DIRNAME=%~dp0%
...
set PROGNAME=%~nx0%&lt;/pre&gt;

&lt;p&gt;This got JBoss up and running successfully, despite the &amp;quot;incorrect&amp;quot; &lt;tt&gt;OS&lt;/tt&gt; environment variable value on our Windows workstations.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4105825775072055581?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4105825775072055581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/03/fix-error-starting-jboss-please-check.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4105825775072055581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4105825775072055581'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/03/fix-error-starting-jboss-please-check.html' title='Fix: Error starting JBoss: “Please check that you are in the bin directory when running this script.”'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3521251515076835717</id><published>2010-02-08T12:55:00.002-05:00</published><updated>2010-03-16T16:41:06.053-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='confluence'/><title type='text'>Confluence wiki: Linking to a diff against a specific old page version</title><content type='html'>&lt;p&gt;At my office, we use the Confluence wiki for knowledge management.&amp;#160; We recently had some design specifications for a project delivered to us by a 3rd-party consultant; we imported this documentation into Confluence to allow easy tracking of future changes made to the content.&lt;/p&gt;&lt;p&gt;I wanted to be able to add a link to each page along the lines of “click here to see the Confluence diff between the current version of this page, and the 2009 version,” where the aforementioned “2009 version” would be a specific old page version of the page that I would specify when I set up the link on each page.&lt;/p&gt;&lt;p&gt;Unfortunately, Confluence doesn’t provide an “out-of-the-box” way to provide &amp;quot;one click&amp;quot; access such a diff of a specific old page version against the latest version of the page.&amp;#160; You can create a link to a Confluence diff between two specific versions by using the &lt;code&gt;diffpages.action&lt;/code&gt; or &lt;code&gt;diffpagesbyversion.action&lt;/code&gt; pages that come with Confluence, but both of those take two hard-coded version IDs or page IDs as parameters; they don’t take a parameter or otherwise allow you to specify “latest” as one of the versions to compare.&amp;#160; So you could create a link to a diff between (say) version 1 and version 5 of a page, but that link would become obsolete as new versions beyond 5 were created.&lt;/p&gt;&lt;p&gt;I asked for advice on how to do this (in &lt;a href="http://forums.atlassian.com/message.jspa?messageID=257331423"&gt;this thread&lt;/a&gt;) on the &lt;a href="http://forums.atlassian.com/forum.jspa?forumID=96"&gt;Atlassian Confluence forum&lt;/a&gt;, and got a helpful suggestion from “Rob L.” involving setting up a &lt;a href="http://confluence.atlassian.com/display/DISC/Version+Macro"&gt;Confluence user macro to emit the current version of a page&lt;/a&gt;, which could then be embedded in a link to a diff page; however, in my Confluence instance at work, I am unable to get a new user macro set up, so while a good solution, it didn’t solve the problem for me.&lt;/p&gt;&lt;p&gt;I then tinkered a bit more on my own, and came up with a way to do this without the need for a user macro. The approach involves using raw HTML (via the Confluence &lt;code&gt;{html}&lt;/code&gt; macro) to create a hyperlink with a dummy target (“href”), and then using Javascript (again using the &lt;code&gt;{html}&lt;/code&gt; macro) to edit the link target to include the pageId of the Confluence page, which is accessible via the Javascript DOM. &lt;/p&gt;&lt;p&gt;Here's the Confluence markup: &lt;/p&gt;&lt;pre&gt;{html}
  &amp;lt;a id=&amp;quot;mydiffLink&amp;quot; href=&amp;quot;#&amp;quot;&amp;gt;Click here to view the diff.&amp;lt;/a&amp;gt; 
  &amp;lt;script&amp;gt; 
    document.getElementById('mydiffLink').href=
      &amp;quot;http://myConfluenceHost/confluence/pages/diffpages.action 
      ?originalId=12345678&amp;amp;pageId=&amp;quot; + document.getElementById('pageId').value; 
  &amp;lt;/script&amp;gt; 
{html} &lt;/pre&gt;&lt;p&gt;This solution uses &lt;code&gt;diffpages.action&lt;/code&gt; rather than &lt;code&gt;diffpagesbyversion.action&lt;/code&gt; since the code uses the Confluence page ID, not version ID. &lt;/p&gt;&lt;p&gt;When using this solution, the hard-coded &amp;quot;12345678&amp;quot; in the above example should be replaced with the actual page ID of the old page to compare against. &lt;/p&gt;&lt;p&gt;&amp;quot;http://myConfluenceHost&amp;quot; in the above example should also be replaced with the actual hostname of your Confluence server, of course. &lt;/p&gt;&lt;p&gt;Caveats: This approach relies on (1) the Confluence &lt;code&gt;{html}&lt;/code&gt; macro being enabled, and (2) on the user viewing the page having Javascript enabled.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3521251515076835717?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3521251515076835717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/02/confluence-wiki-linking-to-diff-against.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3521251515076835717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3521251515076835717'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/02/confluence-wiki-linking-to-diff-against.html' title='Confluence wiki: Linking to a diff against a specific old page version'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4942588736038680224</id><published>2010-01-25T12:26:00.001-05:00</published><updated>2010-01-25T12:26:37.462-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Fix: Thinkpad using Wireless LAN even when connected via wire</title><content type='html'>&lt;p&gt;This morning, I noticed that my work laptop, a Thinkpad T60 running Windows XP, was using its wireless network connection, even though the machine was docked and plugged in to the wired LAN.&amp;#160; In Control Panel | Network Connections, the “Wireless Network Connection” showed “Connected,” but the “Primary Network Connection” showed “Disabled.”&lt;/p&gt;  &lt;p&gt;Right-clicking the “Primary Network Connection” and selecting “Enable” from the context menu resulted in a “Connection Failed!” message in a popup window, with no further details on the problem.&lt;/p&gt;  &lt;p&gt;I’m not sure how my “Primary Network Connection” became disabled in the first place, but I was able to re-enable it as follows:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;In Control Panel |&amp;#160; Network Connections, right-click on “Primary Network Connection” and choose “Properties”&lt;/li&gt;    &lt;li&gt;In the “Primary Network Connection Properties” dialog that appears, click the Configure button (near the top of the dialog).&lt;/li&gt;    &lt;li&gt;In the dialog that appears, if a message appears stating that the device is currently disabled, click the “Enable Device” button.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;That fixed the problem for me.&amp;#160; The wired connection started successfully, and the wireless connection disconnected automatically (as it normally does when the wired connection is active).&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4942588736038680224?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4942588736038680224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/01/fix-thinkpad-using-wireless-lan-even.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4942588736038680224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4942588736038680224'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/01/fix-thinkpad-using-wireless-lan-even.html' title='Fix: Thinkpad using Wireless LAN even when connected via wire'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8558793516362273958</id><published>2010-01-14T16:19:00.001-05:00</published><updated>2010-01-14T16:19:04.028-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='msoffice'/><title type='text'>Microsoft Office 2003: Ctrl+F1 closes the task pane</title><content type='html'>&lt;p&gt;Just because I couldn’t find this information when I was searching for it now: In Microsoft Office 2003, the keyboard shortcut to close (hide) the task pane is &lt;strong&gt;Ctrl+F1&lt;/strong&gt;.&amp;#160; (The task pane in Office 2003 is the panel on the right side of the window that is usually hidden, but opens to show certain information such as Help (upon a press of F1), “Getting Started”, the Office clipboard ring, and other items.)&amp;#160; &lt;/p&gt;  &lt;p&gt;This shortcut applies to Word 2003, Excel 2003, and PowerPoint 2003 (possibly among others).&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8558793516362273958?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8558793516362273958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2010/01/microsoft-office-2003-ctrlf1-closes.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8558793516362273958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8558793516362273958'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2010/01/microsoft-office-2003-ctrlf1-closes.html' title='Microsoft Office 2003: Ctrl+F1 closes the task pane'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3630208665930104883</id><published>2009-12-19T17:35:00.003-05:00</published><updated>2009-12-20T21:28:51.938-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Possible fix: Dell Inspiron 1525 won’t power on</title><content type='html'>&lt;p&gt;&lt;b&gt;Update 12/20/2009&lt;/b&gt;: My stepmom is continuing to have the same problem with her laptop, so apparently the possible solution outlined below is not a "real" solution.  (She ended up calling Dell tech support and they're going to replace her machine's motherboard.)  Still, leaving this post here on the off chance that it might prove helpful to someone.&lt;/p&gt;&lt;br /&gt;
&lt;p&gt;My Dad and Stepmom came to visit my house for the weekend this weekend.&amp;#160; My stepmom tried to power on her laptop, a Dell Inspiron 1525, to finish up some work; however, the machine wouldn’t power on.&amp;#160; All of the power LED lights on the bottom-left corner of the machine were completely dark; pressing the laptop’s power button had no visible effect at all.&lt;/p&gt;&lt;p&gt;We tried, without success:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Reseating the battery (removing and replacing it)&lt;/li&gt;
&lt;li&gt;Plugging in the AC power&lt;/li&gt;
&lt;li&gt;Removing the battery, but leaving the AC power plugged in&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;None of these steps helped; after trying each step, pressing the laptop’s power button had no visible effect, and all of the LED lights on the machine stayed dark.&lt;/p&gt;&lt;p&gt;At this point, I was just about ready to give up and punt the problem to Dell repair (as the machine was still under warranty), but I tried one more thing: I (1) disconnected the AC power (for safety); (2) removed the battery; (3) &lt;strong&gt;cleaned/polished the metal contacts both on the battery, and on the laptop itself where the battery connects to the laptop&lt;/strong&gt;; (4) and then replaced the battery.&lt;/p&gt;&lt;p&gt;After doing this, upon pressing the power button once again, the machine powered on!&amp;#160; The LED lights at the bottom-left came on as normal, and the machine proceeded to boot into Windows.&lt;/p&gt;&lt;p&gt;The machine did power off without warning once during the evening while my stepmom was using it, so the problem apparently isn’t completely resolved.&amp;#160; I did just use my sweater to clean the power contacts on the battery and the laptop; if the connection between the battery and the laptop wasn’t actually the problem -- and I’m not convinced that it was the problem, but the symptoms do seem to be consistent with an issue related to the power supply – then maybe using a better method of cleaning the contacts would yield better results.&lt;/p&gt;&lt;p&gt;In the meantime, though, I thought I would post this, as I didn’t come across this solution in the course of my Googling for &lt;a href="http://www.google.com/search?q=inspiron+won't+power+on"&gt;inspiron won’t power on&lt;/a&gt; – although I did come across many forum posts from users looking for a solution to a problem with this same set of symptoms.&lt;/p&gt;&lt;p&gt;If anyone does give this solution a try, and is successful, please leave a comment to let me and others know!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3630208665930104883?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3630208665930104883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/12/possible-fix-dell-inspiron-1525-wont.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3630208665930104883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3630208665930104883'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/12/possible-fix-dell-inspiron-1525-wont.html' title='Possible fix: Dell Inspiron 1525 won’t power on'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4000572001147902272</id><published>2009-12-17T11:08:00.001-05:00</published><updated>2009-12-17T11:08:24.462-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><category scheme='http://www.blogger.com/atom/ns#' term='vba'/><title type='text'>Fix: Excel VBA “User-defined type not defined”: DataObject</title><content type='html'>&lt;h4&gt;Problem&lt;/h4&gt;  &lt;p&gt;An Excel VBA subroutine that involves interaction with the Windows Clipboard fails to run with the error: “Compile error: User-defined type not defined.”&amp;#160; The line of code highlighted by Excel as being the cause of the error includes a reference to the “DataObject” object type.&lt;/p&gt;  &lt;h4&gt;Solution&lt;/h4&gt;  &lt;p&gt;(Tested on my machine with Excel 2003 SP3)&lt;/p&gt;  &lt;p&gt;In the Microsoft Visual Basic editor:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Stop debugging by clicking the “Stop” button on the toolbar (if debugging isn’t already stopped).&lt;/li&gt;    &lt;li&gt;Tools menu | References&lt;/li&gt;    &lt;li&gt;In the list of available references, find “Microsoft Forms 2.0 Object Library”, check it, and click OK.&amp;#160; (For me, this was the 2nd unchecked item from the top of the list; it wasn’t sorted alphabetically in the list like most of the rest of the listed items.)&lt;/li&gt;    &lt;li&gt;Run the macro again.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;That’s it!&amp;#160; Hope this helps!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4000572001147902272?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4000572001147902272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/12/fix-excel-vba-user-defined-type-not.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4000572001147902272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4000572001147902272'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/12/fix-excel-vba-user-defined-type-not.html' title='Fix: Excel VBA “User-defined type not defined”: DataObject'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4441616433268886721</id><published>2009-12-09T00:01:00.001-05:00</published><updated>2009-12-09T00:12:17.199-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cellular phone'/><category scheme='http://www.blogger.com/atom/ns#' term='internet service'/><category scheme='http://www.blogger.com/atom/ns#' term='tv'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Going cheap on services… and liking it!</title><content type='html'>&lt;p&gt;My family and I moved into a new home south of Grand Rapids in western Michigan over the summer.&amp;#160; Since living here, we’ve made a conscious effort to limit the monthly cost of our “big four” services: Cell phones, “land line” phone line, broadband Internet, and TV.&amp;#160; This is how we’re doing currently:&lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;th&gt;Service&lt;/th&gt;        &lt;th&gt;Monthly Cost&lt;/th&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Cell phones (2)&lt;/td&gt;        &lt;td align="right"&gt;$16.67&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Phone (land line)&lt;/td&gt;        &lt;td align="right"&gt;$0.00&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Broadband Internet&lt;/td&gt;        &lt;td align="right"&gt;$19.95&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;HDTV&lt;/td&gt;        &lt;td align="right"&gt;$0.00&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;th&gt;Monthly Total (all services)&lt;/th&gt;        &lt;th align="right"&gt;$36.62&lt;/th&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;th&gt;Annual Total (all services)&lt;/th&gt;        &lt;th align="right"&gt;$439.40&lt;/th&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;So: A land line phone, 2 cell phones, Internet service, and HDTV for less than $40/month; not bad!&amp;#160; Read on for the details.&lt;/p&gt;  &lt;h4&gt;Cell Phones&lt;/h4&gt;  &lt;p&gt;My wife Melissa and I both carry cell phones.&amp;#160; Typical month-to-month voice plans &lt;a href="http://www.verizonwireless.com/b2c/splash/planfamily.jsp?lid=//global//plans//voice+plans//family"&gt;run $70 and up&lt;/a&gt; for a 2-line “family plan,” but for over a year now, we’ve avoid that cost by using &lt;em&gt;pre-paid &lt;/em&gt;plans.&amp;#160; At the time that we dropped our prior month-to-month plan, Melissa did some research on where we could get the most bang for our buck with a pre-paid plan. &lt;/p&gt;  &lt;p&gt;We landed on a plan from &lt;a href="http://www.alltel.com/"&gt;Alltel&lt;/a&gt; offering $0.15/minute calls with no other fees, and prepaid minutes good for a full 365 days when the minutes are purchased in increments of at least $100 (per phone).&amp;#160; So, once per year, we drop $100 on minutes for each of our phones (so $200 total), and we’re good for another year!&amp;#160; It works out to a monthly cost of $100/12 = $8.33/month per phone, or a combined $16.67/month for both.&lt;/p&gt;  &lt;p&gt;With &lt;a href="http://news.vzw.com/news/2009/01/pr2009-01-09.html"&gt;Alltel recently having been acquired by Verizon&lt;/a&gt;, though, the $0.15/minute prepaid plan is unfortunately apparently no longer available for new customers.&amp;#160; The cheapest flat-rate prepaid plan Verizon is advertising on their site currently is a &lt;a href="http://www.verizonwireless.com/b2c/store/controller?item=prepayItem&amp;amp;action=viewPrepayOverview"&gt;$0.25/minute plan&lt;/a&gt;; there’s probably another wireless provider out there with a better deal.&amp;#160; Fortunately for Melissa and I, though, Verizon has so far continued to honor Alltel’s $0.15/min rate for us, at least for the time being!&lt;/p&gt;  &lt;p&gt;The only real downside to this approach has been that our $100/year per phone, with calls running $0.15/minute, buys us just 100/0.15 = 667 minutes of talking per phone – that’s only 56 minutes per month.&amp;#160; Limiting our cell phone use to “emergency” or other quick-duration calls, we haven’t had a problem staying under this modest limit yet, though.&amp;#160; (And even if we do have to buy extra minutes before an entire year has elapsed, we’re still coming out way ahead compared to a month-to-month plan.&amp;#160; Verizon, for one, apparently realizes this, because on their “Plans” page, virtually the entire page is dedicated to marketing their month-to-month plans, with “Prepaid Plans” showing up as just &lt;a href="http://www.verizonwireless.com/b2c/store/controller?item=planFirst&amp;amp;action=viewPlanOverview&amp;amp;lid=//global//plans"&gt;one small link in the corner&lt;/a&gt;.&amp;#160; Nice!)&lt;/p&gt;  &lt;h4&gt;Home Phone (land line)&lt;/h4&gt;  &lt;p&gt;Since we don’t use our cell phones for any “real” conversations, Melissa needs another way to call her Mom and her friends and chat!&amp;#160; Even though the new normal for many households is to have no land line at all and use cell phones exclusively, we’ve found that it’s working very well for us to use a &lt;acronym title="Voice over Internet Protocol"&gt;VoIP&lt;/acronym&gt; solution that comes with no monthly fee at all: A device called &lt;a href="http://www.ooma.com/"&gt;Ooma&lt;/a&gt;.&amp;#160; &lt;/acronym&gt;&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;The first I’d heard of Ooma was when my Dad told me about it just a few months ago, shortly after my family’s move into the new house.&amp;#160; It’s similar to &lt;a href="http://www.magicjack.com/"&gt;MagicJack&lt;/a&gt; in that it’s a “voice over IP” service that you can use “traditional” home phones with and has no ongoing monthly fee; but Ooma differs from MagicJack in that Ooma doesn’t require that the device be connected to a PC (and requires that it’s own software be running on that PC at all times for the phone to work).&amp;#160; Ooma instead plugs directly into a cable modem/DSL modem or router.&lt;/acronym&gt;&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;Ooma has a somewhat steep up-front cost; currently, it’s going for &lt;a href="http://www.amazon.com/ooma-Phone-System-Monthly-Service/dp/B001C1MGKI?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B001C1MGKI"&gt;$215 on Amazon.com&lt;/a&gt;. However, with a $0 ongoing monthly cost for the life of the device, the break-even point comes up very quickly relative to a $35+/month traditional phone bill (about 6 months, or less) – it’s pure profit after that!&lt;/acronym&gt;&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;Ooma has been working really great for Melissa and I so far.&amp;#160; Even over our somewhat piddly 768k/384k DSL connection (more on that below), call quality on both ends is crystal clear – I’d characterize it as being as good as a traditional land line, and better than a typical cell phone – and it has yet to drop a call.&amp;#160; &lt;/acronym&gt;&lt;/acronym&gt;&lt;/p&gt;  &lt;p&gt;With the Ooma device plugged directly into the DSL modem, phone calls work fine even when someone is using the Internet on the PC, since Ooma does it’s own QoS (quality-of-service) management on any devices plugged in to the network downstream of it.&amp;#160; I have my Ooma hub plugged directly into my DSL modem, and my router plugged into the Ooma hub (so Ooma sits between the modem and the router), and I’ve found this setup to work just fine, both for phone calls and for my PC and other Internet-connected devices.&lt;/acronym&gt; &lt;/acronym&gt;&lt;/p&gt;  &lt;h4&gt;Broadband Internet&lt;/h4&gt;  &lt;p&gt;As I mentioned earlier, I have AT&amp;amp;T 768k down / 384k up DSL Internet connection, for which I’m paying $19.95/month – &lt;em&gt;even though I don’t have phone service through AT&amp;amp;T!&lt;/em&gt;&amp;#160; In many regions now, apparently, AT&amp;amp;T (and other DSL providers) offer what is called “dry loop” service, where you can get DSL even if you don’t have land line phone service through the same company (or any land line phone number at all).&amp;#160; &lt;/p&gt;  &lt;p&gt;Somewhat like Verizon and their “Prepaid Plans,” AT&amp;amp;T hides their $20/month plan in the fine print at the bottom of a page on which they much more prominently offer other plans at &lt;a href="http://www.att.com/gen/general?pid=11523"&gt;$35/month and up&lt;/a&gt;.&amp;#160; Even the $35/month figure, though, isn’t bad compared to the price offered by the local cable monopoly, Comcast, whose most inexpensive Internet-only plan, at the time I researched Internet options for my new home, a few months ago – without also purchasing cable TV service – was $60/month!&lt;/p&gt;  &lt;p&gt;Obviously 768k isn’t exactly blazing speed; large downloads take a while to complete, and the bandwidth isn’t sufficient for streaming high-def video (e.g. some &lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt; movies).&amp;#160; The service has been reliable, though, and I’ve found it to work perfectly well for email, browsing the web, gaming (even with both Melissa and I playing simultaneously on separate PCs), VoIP via Ooma (as described above), and even videoconferencing via the free &lt;a href="http://www.google.com/chat/video"&gt;Google Video Chat&lt;/a&gt; with my Dad in Florida.&amp;#160; It also works for me, for large downloads, to just kick off the download before bed and pick up the file in the morning.&amp;#160; (Or, at least, it works well enough for me not to feel too bad about pocketing the difference of $480 that I saved at the end of the year by not going with the faster Comcast service!) &lt;/p&gt;  &lt;h4&gt;HDTV&lt;/h4&gt;  &lt;p&gt;My family just last week, finally, joined the ranks of the HD-enabled: We picked up a 32-inch 720p HDTV.&amp;#160; Previously, the only TV we had in the house was an old “analog” TV that couldn’t receive TV signals, and unfortunately I didn’t jump on the deal to pick up one of the U.S. government digital converter box coupons – now unavailable – that were being passed out for free before the U.S. digital TV transition back in June.&amp;#160; So, we’ve had no TV at all since moving into our the new house earlier this year.&amp;#160; (Admittedly, this was more a burden on the rest of the family than on me, since I tend to spend my free time on the PC, playing games, or reading, rather than in front of the TV.)&lt;/p&gt;  &lt;p&gt;Now that we have a TV capable of receiving digital over-the-air signals, I ordered an HDTV antenna from Amazon – an inexpensive &lt;a href="http://www.amazon.com/RCA-ANT1400M-Multi-Directional-Digital-Passive/dp/B0022NHQ2S?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0022NHQ2S"&gt;RCA ANT1400M Flat HDTV Antenna&lt;/a&gt; (currently going for $25) – and it’s been working great!&amp;#160; After some brief fiddling with the antenna – I ended up getting the best results by propping up the flat antenna at about a 30-degree angle, rather than either leaving it flat on the tabletop, or standing it up vertically – we get NBC, CBS, FOX, and ABC, all in great-looking HD.&amp;#160; (We get about a dozen other digital stations, too, including some that I’d never even heard of, such as the kids’ station &lt;a href="http://www.qubo.com/"&gt;qubo&lt;/a&gt;.)&amp;#160; It was nice to sit and watch some football at home (in HD!) this past Sunday after getting the antenna hooked up for the first time – having the $0/month ongoing cost in the back of my mind certainly didn’t detract from the enjoyment.&amp;#160; :-)&lt;/p&gt;  &lt;h4&gt;So basically, I’m cheap – but I like it that way&lt;/h4&gt;  &lt;p&gt;I’ve got the four major “bundle” services running now for a combined cost of less than $40/month – but obviously with some caveats:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;We have two cell phones – but they’re for limited/emergency use only &lt;/li&gt;    &lt;li&gt;We have broadband Internet – but only 768k downstream &lt;/li&gt;    &lt;li&gt;We have HDTV – but only the major networks, plus a dozen or so other random stations &lt;/li&gt;    &lt;li&gt;We have home phone service - (actually, no real caveat here, it works just fine!) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I can live with those caveats, though, in light of this chart – repeated from the top of this post, but updated to include a comparison to some of the other service options I mentioned:&lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;th&gt;Service&lt;/th&gt;        &lt;th&gt;Provider&lt;/th&gt;        &lt;th&gt;Monthly Cost&lt;/th&gt;        &lt;th&gt;Provider&lt;/th&gt;        &lt;th&gt;Monthly Cost&lt;/th&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Cell phones (2)&lt;/td&gt;        &lt;td&gt;Alltel Prepaid (grandfathered)&lt;/td&gt;        &lt;td align="right"&gt;$16.67&lt;/td&gt;        &lt;td&gt;Verizon Family &amp;quot;basic&amp;quot; plan (cheapest advertised 2-phone plan on the Verizon site) &lt;/td&gt;        &lt;td align="right"&gt;$69.99&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Phone (land line)&lt;/td&gt;        &lt;td&gt;&lt;a href="http://www.amazon.com/ooma-Phone-System-Monthly-Service/dp/B001C1MGKI?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B001C1MGKI"&gt;Ooma&lt;/a&gt;&lt;/td&gt;        &lt;td align="right"&gt;$0.00&lt;/td&gt;        &lt;td&gt;None (&amp;quot;Who needs a land line anymore?&amp;quot;)&lt;/td&gt;        &lt;td align="right"&gt;$0.00&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Broadband Internet&lt;/td&gt;        &lt;td&gt;&lt;a href="http://www.att.com/gen/general?pid=11523"&gt;AT&amp;amp;T dry loop, 768k down&lt;/a&gt;&lt;/td&gt;        &lt;td align="right"&gt;$19.95&lt;/td&gt;        &lt;td&gt;Comcast Economy Internet, 1M down (cheapest advertised Internet plan; bundle with Comcast cable TV required to get rate)&lt;/td&gt;        &lt;td align="right"&gt;$24.95&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;HDTV&lt;/td&gt;        &lt;td&gt;Digital TV + &lt;a href="http://www.amazon.com/RCA-ANT1400M-Multi-Directional-Digital-Passive/dp/B0022NHQ2S?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=xm2&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0022NHQ2S"&gt;RCA ANT1400M Antenna&lt;/a&gt;&lt;/td&gt;        &lt;td align="right"&gt;$0.00&lt;/td&gt;        &lt;td&gt;Digital TV + Comcast Digital Preferred (cheapest advertised rate; non-&amp;quot;introductory&amp;quot; ongoing rate)&lt;/td&gt;        &lt;td align="right"&gt;$74.94&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;th&gt;Monthly Total (all services)&lt;/th&gt;        &lt;th&gt;&amp;#160;&lt;/th&gt;        &lt;th align="right"&gt;$36.62&lt;/th&gt;        &lt;th&gt;&amp;#160;&lt;/th&gt;        &lt;th align="right"&gt;$169.88&lt;/th&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;th&gt;Annual Total (all services)&lt;/th&gt;        &lt;th&gt;&amp;#160;&lt;/th&gt;        &lt;th align="right"&gt;$439.40&lt;/th&gt;        &lt;th&gt;&amp;#160;&lt;/th&gt;        &lt;th align="right"&gt;$2038.56&lt;/th&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;th&gt;Annual Savings &lt;/th&gt;        &lt;th&gt;&amp;#160;&lt;/th&gt;        &lt;th align="right"&gt;$1599.16&lt;/th&gt;        &lt;th&gt;&amp;#160;&lt;/th&gt;        &lt;th align="right"&gt;--&lt;/th&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;So, yeah: I’m cheap, and the services I’ve got do include a few “caveats”… but that extra $1600 in my pocket at the end of every year works out to the equivalent of quite a few dinner dates out at a restaurant for Melissa and I.&amp;#160; :-)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4441616433268886721?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4441616433268886721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/12/going-cheap-on-services-and-liking-it.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4441616433268886721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4441616433268886721'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/12/going-cheap-on-services-and-liking-it.html' title='Going cheap on services… and liking it!'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7100488745998695196</id><published>2009-11-23T23:47:00.001-05:00</published><updated>2009-11-23T23:47:37.042-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>My Windows 7 Install Experience</title><content type='html'>&lt;p&gt;I recently installed Windows 7 Home Premium edition on my primary desktop machine at home.&amp;#160; Since &lt;a href="http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html"&gt;I built the machine&lt;/a&gt; fairly recently (November 2008), I was confident that my hardware could handle the OS; also, I had been running 64-bit Vista, which has similar hardware requirements.&amp;#160; I was also curious to get a firsthand look at the Windows 7 given all of the positive buzz (particularly relative to Vista, which had comparatively negative buzz at launch).&amp;#160; Finally, being a PC technology enthusiast, it’s always fun to be running the “latest and greatest.”&lt;/p&gt;  &lt;p&gt;My install experience was largely very positive.&amp;#160; I did run into two significant snags, however.&lt;/p&gt;  &lt;h4&gt;Snag #1 – Windows wouldn’t recognize my wireless card&lt;/h4&gt;  &lt;p&gt;I run a wireless network at home, and have my PC connected to the network over the wireless (due primarily to the fact there happens to be no phone jack to plug my DSL modem into anywhere near the PC).&amp;#160; The wireless card I’ve always used with this machine, and had no problems with, is a &lt;a href="http://kb.netgear.com/app/products/model/a_id/2566"&gt;Netgear WG311v3&lt;/a&gt; (an internal PCI-slot network card).&amp;#160; &lt;/p&gt;  &lt;p&gt;Unfortunately, after getting Windows 7 installed, Windows wouldn’t recognize the WG311v3 card.&amp;#160; The problem was that Windows 7 64-bit allows the use of only signed drivers, and Netgear has not released a signed driver for this card (despite the fact that this card is still actively &lt;a href="http://www.amazon.com/gp/product/B00009YW8B?ie=UTF8&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=B00009YW8B"&gt;sold in stores&lt;/a&gt;, as of the time of this writing).&amp;#160; I was surprised by this problem, since apparently the restriction of using signed drivers only has been around in previous versions of Windows as well, and I had been using this card with no problems under Vista 64-bit – I’m still not sure at this point why this card worked for me under Vista 64-bit, but not Windows 7 64-bit.&amp;#160; &lt;/p&gt;  &lt;p&gt;After fighting with this problem for 3 hours or so (trying alternative drivers, and other workarounds), I gave up: I temporarily ran a long ethernet cable across my living room to the router to allow me to get online, and I ordered an inexpensive &lt;a href="http://www.amazon.com/gp/product/B001DKBNMA?ie=UTF8&amp;amp;tag=jonschneiderc-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=B001DKBNMA"&gt;MediaLink MWN-USB54G USB Wireless-G adapter&lt;/a&gt; ($30 on Amazon.com at the time of this writing) which had great reviews and was reported by multiple reviewers in their comments to work fine with Windows 7 64-bit.&amp;#160; When the MWN-USB54G arrived a few days later, I plugged it in, and Windows 7 recognized it immediately and I was able to get online wirelessly with no problems – no need to use the enclosed CD.&lt;/p&gt;  &lt;p&gt;So, boo to Netgear for not releasing a signed driver for their WG311v3 wireless card, and a bummer that I had to spend a little money on new hardware, but at this point I’m happy and have had no problems with the MWN-USB54G over the past couple of weeks of use.&lt;/p&gt;  &lt;h4&gt;Snag #2 – Problems initially getting Windows “activated” (registered)&lt;/h4&gt;  &lt;p&gt;Prior to installing Windows 7, my machine had a single 1.0 TB hard drive; for the purposes of this post, I’ll call this “drive 1.”&amp;#160; I had been running Vista Ultimate edition, for which a direct overinstall-type upgrade to Windows 7 Home Premium is not supported.&amp;#160; A “default” path to getting Window 7 installed in this case might have been to do the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Move my 100+ GB of documents (mostly photos and home videos of the family) to external storage &lt;/li&gt;    &lt;li&gt;Format the hard drive &lt;/li&gt;    &lt;li&gt;Install Windows 7 &lt;/li&gt;    &lt;li&gt;Recopy the 100+ GB of documents back onto the drive &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;However, I didn’t have a convenient way to copy the documents off the drive and then back on.&amp;#160; I decided instead to do the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Remove the hard drive, “drive 1,” from the machine &lt;/li&gt;    &lt;li&gt;Add a new 500 GB hard drive to the machine, “drive 2,” to become the new C: drive &lt;/li&gt;    &lt;li&gt;Install Windows 7 &lt;/li&gt;    &lt;li&gt;Add “drive 1” back to the machine – “drive 1” now becomes D: &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This procedure successfully got me up and running with Windows 7, with Windows on my C: drive, and all of my documents on my D: drive.&lt;/p&gt;  &lt;p&gt;This plan did hit one significant snag: During the initial install, &lt;strong&gt;when I was prompted for my CD-key, Windows wouldn’t accept it&lt;/strong&gt;.&amp;#160; I double-checked the key I’d entered and verified it was correct, but entry of the key still failed with a generic error message.&amp;#160; Being a power user, I figured I could just clear the CD-key field and hit “Continue,” and Windows would let me go through with the install – and this did indeed turn out to be the case – but I might have been stuck if I didn’t know to do that.&lt;/p&gt;  &lt;p&gt;Upon getting Windows up and running, I used the built-in “Activate Windows” utility (which I found easily simply by typing “Activate” into the Run/Search field on the Start menu – very cool!) to try and activate Windows using my CD-key once again.&amp;#160; This time I got a better error message instead of the generic one I was getting during initial setup: “&lt;strong&gt;The Software Licensing Service determined that this specified product key can only be used for upgrading, not clean installations&lt;/strong&gt;.”&lt;/p&gt;  &lt;p&gt;This made sense – Since I didn’t do an overinstall of Vista, and in fact had completely removed the drive with the Vista install on it from the machine completely while the initial Windows 7 install was running, of course Windows had no way of knowing that I legitimately was eligible for an “upgrade.”&amp;#160; Still, it would have been nice to have gotten a better error message during the initial setup.&amp;#160; Having realized the problem, I would have expected to have been offered some option to insert my old Vista DVD and/or enter my old Vista CD-key in order to prove to Windows 7 that I &lt;em&gt;was&lt;/em&gt;, in fact, eligible for the upgrade, but there wasn’t any option like that.&lt;/p&gt;  &lt;p&gt;Ultimately, &lt;strong&gt;I ended up using a workaround that I found on Paul Thurrott’s article &lt;/strong&gt;&lt;a href="http://www.winsupersite.com/win7/clean_install_upgrade_media.asp"&gt;&lt;strong&gt;Clean Install Windows 7 with Upgrade Media&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; to successfully activate Windows&lt;/strong&gt;.&amp;#160; I used “Method #2” from that page, and it worked fine for me!&amp;#160; (Thanks, Paul!)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7100488745998695196?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7100488745998695196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/11/my-windows-7-install-experience.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7100488745998695196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7100488745998695196'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/11/my-windows-7-install-experience.html' title='My Windows 7 Install Experience'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-308244304542554913</id><published>2009-10-09T09:28:00.001-04:00</published><updated>2009-10-09T09:28:29.002-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='msoffice'/><title type='text'>Tip: Navigate “Back” like in a browser in Microsoft Word</title><content type='html'>&lt;p&gt;Quick tip: In Microsoft Word, in a document with in-document hyperlinks, after navigating to another location in the document by clicking on a hyperlink (typically by holding Ctrl and clicking the link, as Word will prompt when the mouse cursor is hovered over a link), you can go back to where you were before in the document by using Alt+LeftArrow (hold down the Alt key and press the Left Arrow key) – similar to clicking on the Back button in a web browser.&lt;/p&gt;  &lt;p&gt;Alt+RightArrow also works to go forward once again after using the Alt+LeftArrow shortcut to go back.&lt;/p&gt;  &lt;p&gt;These are a good shortcuts to be aware of, since Word doesn’t by default show Back/Forward buttons in the toolbar like a browser does.&amp;#160; (This is the case in Word 2003 – I don’t have a copy of Word 2007 in front of me at the moment to check.)&lt;/p&gt;  &lt;p&gt;In Word 2003, you &lt;em&gt;can&lt;/em&gt; get Word to show Back/Forward buttons in the toolbar by making Word’s Web toolbar visible.&amp;#160; (Right-click a blank area of the toolbar at the top of the Word window, and select Web from the context menu that appears.)&lt;/p&gt;  &lt;p&gt;The Alt+LeftArrow and Alt+RightArrow keyboard shortcuts to navigate Back or Forward respectively also work in most web browsers on Windows.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-308244304542554913?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/308244304542554913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/10/tip-navigate-back-like-in-browser-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/308244304542554913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/308244304542554913'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/10/tip-navigate-back-like-in-browser-in.html' title='Tip: Navigate “Back” like in a browser in Microsoft Word'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6975956914043779222</id><published>2009-10-01T10:54:00.001-04:00</published><updated>2009-10-01T10:54:23.971-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='msoffice'/><title type='text'>Creating Mirrored Content in MS Word</title><content type='html'>&lt;p&gt;It is possible to set up sections of “mirrored content” in Microsoft Word, such that the same content appears in two or more places in the document, and changes to the content in the “master” location are automatically mirrored to the other instances of the content.&lt;/p&gt;  &lt;p&gt;The following instructions apply to Word 2003; I’ve done this in Word 2007 as well, but the specific procedure will differ slightly due to 2007’s use of the Ribbon interface rather than the traditional menu.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1. Designate the master content&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To designate the “master” (primary) version of the content to be mirrored, select the content (e.g. by left-clicking and dragging the mouse cursor over it), and then create a “Bookmark” on the content by selecting Insert | Bookmark from the menu.&amp;#160; In the Bookmark dialog, add a new bookmark and name it whatever you like.&lt;/p&gt;  &lt;p&gt;Tip: You may also want to enable “Show Bookmarks” at Tools menu | Options | View tab, so that you can see the bounds of the bookmark you created.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;2. Place the mirrored content&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now, go to the place in the document where you want the mirrored copy of the content to appear.&amp;#160; At that location, add a “Cross-Reference” via Insert menu | Reference | Cross-reference.&amp;#160; In the Cross-reference dialog, set Reference Type to “Bookmark” and Insert Reference To to “Bookmark Text”; in the For Which Bookmark field, select the bookmark you created.&amp;#160; &lt;/p&gt;  &lt;p&gt;Optionally, you can leave the “Insert as hyperlink” dialog checked.&amp;#160; If this is checked, the mirrored content will still appear normally (it won’t be underlined like a typical World Wide Web hyperlink), but readers of the document will be able to Ctrl+click the mirrored content to jump to the location of the master copy of the content.&lt;/p&gt;  &lt;p&gt;Finally, click the dialog’s Insert button, and then the Close button.&amp;#160; The mirrored copy of the content should now appear in the document!&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;3. Updating the mirrored content&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The mirrored content will &lt;em&gt;not&lt;/em&gt; immediately automatically update when the master content is updated.&amp;#160; You can update the mirrored copy manually by right-clicking the mirrored text, and selecting “Update Field” from the context menu that appears.&lt;/p&gt;  &lt;p&gt;You can update all of the mirrored content in the document at once by selecting the entire document (Edit menu | Select All; or press Ctrl+A), right-clicking anywhere in the document, and selecting “Update Field.”&amp;#160; All mirrored content fields (and any other fields that may be present in the document) will be updated.&lt;/p&gt;  &lt;p&gt;Alternatively, you can set Word to automatically update all fields in documents each time the document is printed.&amp;#160; To do this, in Tools menu | Options | Print tab, select the Update Fields check box.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Bonus Tip: Capitalizing the mirrored content&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Optionally, you can make the mirrored content appear in ALL CAPS even if the master content is mixed-case.&amp;#160; To do this:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Right-click the mirrored content; from the context menu, select Edit Field. &lt;/li&gt;    &lt;li&gt;In the Field dialog, click the Field Codes button.&amp;#160; &lt;/li&gt;    &lt;li&gt;In the Field Codes text box that appears, type the following text at the end of the existing content of the text box:      &lt;br /&gt;      &lt;pre&gt;\* UPPER&lt;/pre&gt;
  &lt;/li&gt;

  &lt;li&gt;Click OK. The mirrored content should now appear in all uppercase! &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;(Thanks to &lt;a href="http://www.gmayor.com/formatting_word_fields.htm"&gt;Graham Mayor&lt;/a&gt; for the tip on the capitalization field switch. See &lt;a href="http://www.gmayor.com/formatting_word_fields.htm"&gt;Graham's site&lt;/a&gt; for lots of other advanced tips regarding what can be done with Word fields.) &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6975956914043779222?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6975956914043779222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/10/creating-mirrored-content-in-ms-word.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6975956914043779222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6975956914043779222'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/10/creating-mirrored-content-in-ms-word.html' title='Creating Mirrored Content in MS Word'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4276200730583286794</id><published>2009-09-01T21:31:00.001-04:00</published><updated>2009-09-01T21:31:17.882-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><title type='text'>Fix: FTP on Vista: "Replace Existing File with Temp File:I/O Error"</title><content type='html'>&lt;p&gt;I ran into a problem trying to use Vista's command-line FTP utility (ftp.exe) to download a file directly into the \inetpub\wwwroot directory (the root IIS directory) on my local machine.&lt;/p&gt;  &lt;p&gt;The ftp get command produced the following output:&lt;/p&gt;  &lt;pre&gt;150 Opening ASCII mode data connection for &lt;i&gt;file&lt;/i&gt;(4538 bytes).
&amp;gt; Replace Existing File with Temp File:I/O Error
226 Transfer complete.
ftp: 4538 bytes received in 0.17Seconds 26.69Kbytes/sec.&lt;/pre&gt;

&lt;p&gt;When I checked the local destination directory, the file was not present.&lt;/p&gt;

&lt;p&gt;The cause of the problem was that the local directory I was trying to download the file into (in this case, \inetpub\wwwroot) is a protected directory in Vista, requiring administrator access to copy into.&lt;/p&gt;

&lt;p&gt;So, there are a couple of possible workarounds:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Run ftp.exe as Administrator. (One way to do this is to open Windows Explorer, navigate to the directory where ftp.exe is located -- typically C:\Windows\System32 -- and right-click ftp.exe and select Run As Administrator.) &lt;/li&gt;

  &lt;li&gt;Download the file into a non-protected directory, and then use another tool (such as Windows Explorer) to copy the file to the protected final destination directory. &lt;/li&gt;
&lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4276200730583286794?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4276200730583286794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/09/fix-ftp-on-vista-existing-file-with.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4276200730583286794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4276200730583286794'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/09/fix-ftp-on-vista-existing-file-with.html' title='Fix: FTP on Vista: &amp;quot;Replace Existing File with Temp File:I/O Error&amp;quot;'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1434976219996065120</id><published>2009-07-09T14:19:00.001-04:00</published><updated>2009-07-09T14:19:53.055-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='msoffice'/><title type='text'>Tip: How to easily reorder bullet points in MS Word</title><content type='html'>&lt;p&gt;A quick tip on a discovery I just made: You can quickly reorder bullet points in Microsoft Word putting the caret in the bulleted item to be reordered (i.e. click on the item), and then use Alt+Shift+UpArrow or Alt+Shift+DownArrow to reorder the selected item within the list of bullet points.&amp;#160; Apparently this works in other MS Office programs as well (such as PowerPoint).&lt;/p&gt;  &lt;p&gt;I’ve found that this works a lot more nicely than cutting the item to be moved, and then pasting the item in the new location in the list (since often, line breaks need to be fixed up after the new item is pasted in.)&lt;/p&gt;  &lt;p&gt;Bonus tip: Alt+Shift+LeftArrow and Alt+Shift+RightArrow will indent/unindent the selected bulleted item.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1434976219996065120?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1434976219996065120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/07/tip-how-to-easily-reorder-bullet-points.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1434976219996065120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1434976219996065120'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/07/tip-how-to-easily-reorder-bullet-points.html' title='Tip: How to easily reorder bullet points in MS Word'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1916881269880974810</id><published>2009-07-02T15:24:00.001-04:00</published><updated>2009-07-02T15:24:42.674-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><title type='text'>Installing m2eclipse in Eclipse 3.5</title><content type='html'>&lt;p&gt;After newly installing &lt;a href="http://www.eclipse.org/galileo/"&gt;Eclipse 3.5&lt;/a&gt; (replacing my old Eclipse 3.3 install), when I tried to view a document with a &lt;a href="http://maven.apache.org/"&gt;Maven&lt;/a&gt; &lt;a href="http://maven.apache.org/pom.html"&gt;pom.xml&lt;/a&gt; file that I’d previously had open in my workspace, I got an error:&lt;/p&gt;  &lt;blockquote&gt;&lt;tt&gt;Could not open the editor: No editor descriptor for id org.maven.ide.eclipse.editor.MavenPomEditor&lt;/tt&gt;&lt;/blockquote&gt;  &lt;p&gt;The fix was to install &lt;a href="http://m2eclipse.codehaus.org/"&gt;m2eclipse&lt;/a&gt; (the Maven plugin for Eclipse). I did this in Eclipse 3.5 as follows:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Help | Install New Software &lt;/li&gt;    &lt;li&gt;In the &amp;quot;Install&amp;quot; dialog: click the Add button &lt;/li&gt;    &lt;li&gt;In the &amp;quot;Add Site&amp;quot; dialog:      &lt;ul&gt;       &lt;li&gt;Name: &lt;tt&gt;m2eclipse&lt;/tt&gt; &lt;/li&gt;        &lt;li&gt;Location: &lt;tt&gt;http://m2eclipse.sonatype.org/update/&lt;/tt&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Click OK &lt;/li&gt;    &lt;li&gt;Back in the &amp;quot;Install&amp;quot; dialog, in the &amp;quot;Add Site&amp;quot; dropdown, select: m2eclipse &lt;/li&gt;    &lt;li&gt;Under &amp;quot;Maven Integration&amp;quot;, I checked:      &lt;ul&gt;       &lt;li&gt;&amp;quot;Maven Integration for Eclipse (Required)&amp;quot; &lt;/li&gt;        &lt;li&gt;&amp;quot;Maven POM Editor (Optional)&amp;quot; &lt;/li&gt;        &lt;li&gt;&amp;quot;Maven POM XML Editor (Optional)&amp;quot; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Click Next, go through and complete the Install wizard. &lt;/li&gt;    &lt;li&gt;When prompted, I restarted Eclipse. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;That got my Maven POM editor up and running in Eclipse 3.5.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1916881269880974810?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1916881269880974810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/07/installing-m2eclipse-in-eclipse-35.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1916881269880974810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1916881269880974810'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/07/installing-m2eclipse-in-eclipse-35.html' title='Installing m2eclipse in Eclipse 3.5'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2399305875659456629</id><published>2009-06-22T18:13:00.001-04:00</published><updated>2009-06-22T18:13:44.096-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='rock band'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='future'/><title type='text'>Multiple Displays: The future of TV &amp; gaming?</title><content type='html'>&lt;p&gt;I’ve been running &lt;a href="http://blog.jonschneider.com/2008/12/adding-3rd-monitor-to-laptop.html"&gt;three monitors&lt;/a&gt; on my PC at work for a while now, and it’s been working great for me.&amp;#160; Multiple monitors works great for running business applications and/or doing software development; for example, I typically run my programming environment maximized on my primary monitor, run most the programming environment’s secondary windows (e.g. project file list, search results, list of compiler warnings/errors, etc.) on the second monitor, and the application’s UI or other reference material on the third monitor.&amp;#160; I’m able to see everything I need to see at once without shuffling windows around.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;PC Games&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;As multiple monitors on PCs continue to gain more market penetration, it would be nice to see more PC games join business applications and take advantage of the potential availability of multiple displays.&amp;#160; A game’s main view of the game world could go on the primary monitor, and secondary information could go on a second monitor, freeing the entire screen area of the primary monitor to show the game world.&amp;#160; For example:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;In MMORPGs such as World of Warcraft, the display can become pretty “cluttered” with ability toolbars, party status display, mini-map/radar, active buffs/debuffs, and more.&amp;#160; All of that could (optionally) be moved onto a secondary monitor, freeing the entire area of the primary monitor to show the game world.&lt;/li&gt;    &lt;li&gt;In RTS games such as the classic Starcraft, the selected unit(s) and their information, “order” buttons (move, attack, stop, etc.), and mini-map could be moved onto the second monitor.&lt;/li&gt;    &lt;li&gt;In traditional RPGs, secondary data such as inventory screens, skill/spell lists, character statistics display, and so forth could be shown on the second monitor, again freeing the entire area of the primary monitor to show the game world at all times.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Console Games&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;It would also be nice if future console systems (i.e. successors of the current generation’s Wii, Xbox 360, and Playstation 3) would (optionally) support hook-up to multiple television sets in the future.&amp;#160; In addition to the getting the same benefits that would be realized by PC games, this might also help with situations where there are multiple players playing simultaneously on the same local console system.&amp;#160; &lt;/p&gt;  &lt;p&gt;Today, local multiplayer is typically accomplished via split screen; in the future, one or more players’ view could be moved onto the second screen.&amp;#160; If a future Rock Band or Guitar Hero game supported the addition of a keyboard (piano) part or otherwise supported more players playing together beyond the 4 supported today, multiple TVs could help with the problem that would otherwise be encountered in trying to squeeze 5+ players’ parts onto the same screen!&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Handheld Games&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Obviously, the one gaming system that is way out ahead of the curve as far as multiple monitor support goes is the Nintendo DS.&amp;#160; With two screens built into the hardware, all games on the platform can be designed to fully take advantage of the availability of two screens.&amp;#160; &lt;/p&gt;  &lt;p&gt;Although I don’t own a DS, I’ve had a chance to briefly borrow one owned by my nephews on a couple of occasions.&amp;#160; It is really cool in a game like Zelda to be able to see both the primary game world and the overhead map view (while in a dungeon) at all times.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;TV - Sports&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Multiple screen support would also be really cool in the future for TV – particularly for sports broadcasts.&amp;#160; In my case, I’m a big fan of &lt;a href="http://www.mgoblue.com/football/"&gt;Michigan Football&lt;/a&gt;.&amp;#160; Instead of watching games on just a single screen (where the display tends to focus in on the quarterback or whomever has the ball, to the exclusion of the rest of the field), it would be amazing to have a second screen showing what the downfield receivers are doing (or other action away from the ball appropriate to the play), and a third screen dedicated to showing real-time stats at all times.&amp;#160; The score and “ticker” could also be shown on the third screen, freeing the entire area of the main screen to show the game action.&lt;/p&gt;  &lt;p&gt;Obviously, support for people watching the game on just a single TV (I’d likely be among them, at least for now!) would have to be maintained as well.&amp;#160; Perhaps an “all in one” game broadcast (essentially what we have today) could be carried on a particular channel; the “multiple screens” version of the game could be carried on a separate set of channels.&lt;/p&gt;  &lt;p&gt;This kind of multiple screen support for sports broadcasts, particularly combined with support for single-TV viewers, would work out to quite a few channels being dedicated to sports broadcasts!&amp;#160; Still, with the proliferation of channels available even today via digital cable or satellite broadcasts, this kind of thing might be possible in the not-too-far future. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Put those old displays to use!&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This would also give people something to do with “old” PC monitors and TVs as they gradually get replaced over time with HD versions: Put the old displays to good use as secondary information displays for games and TV!&amp;#160; One of the 3 monitors that I have at work is an old monitor that would be sitting on a shelf at home (or worse, in a landfill somewhere) if I didn’t have a use for it as the third monitor on my work machine.&lt;/p&gt;  &lt;p&gt;So, PC game developers, console hardware companies, and sports broadcasters: Go forth and make it so.&amp;#160; :-)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2399305875659456629?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2399305875659456629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/06/multiple-displays-future-of-tv-gaming.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2399305875659456629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2399305875659456629'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/06/multiple-displays-future-of-tv-gaming.html' title='Multiple Displays: The future of TV &amp;amp; gaming?'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2578599539195377779</id><published>2009-06-01T17:41:00.001-04:00</published><updated>2009-06-01T17:41:22.046-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='new PC build'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>PC Frequently Rebooting due to Power Supply Unit Issue</title><content type='html'>&lt;p&gt;This past Saturday, I was having lunch with the family in the kitchen when I heard from the office the sound effect that &lt;a href="http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html"&gt;my new PC&lt;/a&gt; plays after booting.&amp;#160; I thought that was odd (since no one was in there using the PC), but shrugged and figured that maybe the PC had rebooted itself due to some automatic update?&amp;#160; When I heard the same sound again a few minutes later, though – indicating a second reboot in the span of a few minutes, with no one sitting at the machine – I investigated.&lt;/p&gt;  &lt;p&gt;As I worked on the PC, I found that it was rebooting itself every few minutes, at irregular intervals.&amp;#160; The PC had never done this before; aside from some &lt;a href="http://blog.jonschneider.com/2008/11/troubleshooting-new-pc-bluescreens.html"&gt;heat-related bluescreen issues&lt;/a&gt; after I first put the PC together, the PC had been quite stable for the 6 months or so since it was built.&amp;#160; I had the reboot problem reproduce once while I was in the boot-time BIOS configuration utility, which proved the problem wasn’t a Windows issue.&lt;/p&gt;  &lt;p&gt;Due to the intermittent nature of the problem, I initially suspected it might be caused by another overheating issue.&amp;#160; However, the BIOS configuration utility showed that the CPU was operating at a nice and cool (relatively speaking!) 40 degrees C or so.&amp;#160; &lt;/p&gt;  &lt;p&gt;I also suspected a possible RAM issue – perhaps one of the four RAM modules had gone bad and was causing the reboots.&amp;#160; However, I tried removing two of the RAM modules at a time (with the machine powered off, of course); the spontaneous reboot reproduced with only modules #1 and 2 in the machine, and also with only modules 3 and 4 in the machine, which appeared to rule out a memory module issue.&lt;/p&gt;  &lt;p&gt;Finally, though, I got “lucky” in my investigation.&amp;#160; After the machine rebooted itself twice in rapid succession, I manually toggled off the power switch at the back of the PC’s power supply unit (PSU) to keep the machine off while I (once again) manually inspected the machine’s hardware.&amp;#160; When I toggled the power supply unit switch back on, I got a surprise – a bright spark and a loud “POP” sound from within the power supply unit!&amp;#160; I immediately pulled the power cord out of the PC to prevent anything further from occurring with the PSU.&lt;/p&gt;  &lt;p&gt;This seemed unlikely to be a coincidence.&amp;#160; If the PSU had indeed gone bad somehow, I could see that the behavior of the system rebooting (with no error message, except Windows complaining that it hadn’t been shut down properly at restart time) would be consistent with the system losing power momentarily, and then getting it back immediately afterwards.&amp;#160; I was fairly confident that the incoming power supply to the machine was OK, as I had the machine hooked up to power via a UPS (an uninterruptable power supply -- designed to ensure a consistent flow of power, even in the event of a power failure).&lt;/p&gt;  &lt;p&gt;I replaced the apparently faulty power supply unit with a spare that my father-in-law Doug had on hand (thanks Dad K.!) – and that resolved the issue!&amp;#160; The machine has been running since Saturday afternoon with no problems.&amp;#160; So the intermittent spontaneous reboot problem had been caused by a faulty power supply unit.&amp;#160; &lt;/p&gt;  &lt;p&gt;I wrote “BAD” on the faulty PSU and threw it away.&amp;#160; I also ordered a modern 500W PSU with integrated PCI-Express and 8-pin CPU connectors to replace the one I’m borrowing from my father-in-law.&lt;/p&gt;  &lt;p&gt;The lesson learned here for me is not to cheap out on buying a PSU when building a new PC!&amp;#160; When selecting a case and power supply for this machine, I’d mostly paid attention to cases, and had just accepted the included power supply that came with the case – for the PSU, I had only really looked at the raw wattage on the PSU (450W).&amp;#160; The PSU had turned out to be an older/cheaper model with no PCIe connection, and only one SCSI drive connection.&amp;#160; For this PC, with reasonably demanding power requirements (including a GeForce 9800 PCIe video card), the lower-end power supply that came with the case apparently just wasn’t sufficient over the long term.&lt;/p&gt;  &lt;p&gt;In the future when building PCs, I’ll most likely opt for purchasing the case and power supply unit separately, and will certainly pay more attention to the detailed specs of the PSU to ensure that it is likely to be sufficient for the needs of the system I’m building!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2578599539195377779?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2578599539195377779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/06/pc-frequently-rebooting-due-to-power.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2578599539195377779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2578599539195377779'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/06/pc-frequently-rebooting-due-to-power.html' title='PC Frequently Rebooting due to Power Supply Unit Issue'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4746699721695217687</id><published>2009-05-19T17:41:00.007-04:00</published><updated>2009-05-20T08:26:04.743-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='spring'/><title type='text'>Fix: Spring-based JNDI lookup can't see .properties file</title><content type='html'>&lt;p&gt;After refactoring one of our internal applications at work to use &lt;a href="http://static.springframework.org/spring/docs/2.5.x/reference/xsd-config.html#xsd-config-body-schemas-jee"&gt;Spring XML configuration file based JNDI lookup&lt;/a&gt; today, several of the application's unit tests which involve testing of JNDI lookups started failing.  The following error appeared for each failed test in the jUnit XML log file:&lt;/p&gt;  &lt;pre&gt;&amp;lt;error message="Error creating bean with name '&lt;i&gt;[dsName]&lt;/i&gt;':
Invocation of init method failed; nested exception is
  javax.naming.NoInitialContextException: Need to specify class name in
  environment or system property, or as an applet parameter, or in an
  application resource file:  java.naming.factory.initial"
type="org.springframework.beans.factory.BeanCreationException"&amp;gt;
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
  .initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
  .doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
... &lt;i&gt;(snipped for brevity)&lt;/i&gt; ...
at org.springframework.context.support.ClassPathXmlApplicationContext
  .&amp;lt;init&amp;gt;(ClassPathXmlApplicationContext.java:83)
at &lt;i&gt;[internal namespace]&lt;/i&gt;.util.TestUtil.getSpringContext(TestUtil.java:167)&lt;/pre&gt;&lt;h4&gt;Cause&lt;/h4&gt;&lt;p&gt;We discovered that the cause of the problem in our case was that, as the error message indicated, Spring wasn't seeing a .properties file present in the project which set a value for the &lt;tt&gt;java.naming.factory.initial&lt;/tt&gt; property.&lt;/p&gt;&lt;p&gt;The line in our Spring context .xml file looked like:&lt;/p&gt;&lt;pre&gt;&amp;lt;jee:jndi-lookup id="[dsName]" jndi-name="jdbc/&lt;i&gt;[dsPath]&lt;/i&gt;/&lt;i&gt;[dsName]&lt;/i&gt;"
  expected-type="javax.sql.DataSource" /&amp;gt;&lt;/pre&gt;&lt;p&gt;The line in our .properties file (which Spring wasn't finding properly), which set the naming factory class to a class provided by our J2EE application server (WebLogic), was:&lt;/p&gt;&lt;pre&gt;java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory&lt;/pre&gt;&lt;p&gt;The .properties file was located in the same folder as the Spring context .xml file.&lt;/p&gt;&lt;h4&gt;Solution&lt;/h4&gt;&lt;p&gt;In the Spring context .xml file, just prior to the jee:jndi-lookup tag, we added a bean of type PropertiesFactoryBean to act as a pointer to the .properties file:&lt;/p&gt;&lt;pre&gt;&amp;lt;bean id="jdbcConfiguration"
  class="org.springframework.beans.factory.config.PropertiesFactoryBean"&amp;gt;
  &amp;lt;property name="location" value="classpath:productInquiry.properties"/&amp;gt;
&amp;lt;/bean&amp;gt;&lt;/pre&gt;&lt;p&gt;Then, we added a reference to that new bean to the existing jee:jndi-lookup tag (the added part is bolded):&lt;/p&gt;&lt;pre&gt;&amp;lt;jee:jndi-lookup id="ot1ds" jndi-name="jdbc/&lt;i&gt;[dspath]&lt;/i&gt;/&lt;i&gt;[dsname]&lt;/i&gt;"
  expected-type="javax.sql.DataSource" &lt;b&gt;environment-ref="jdbcConfiguration"&lt;/b&gt;/&amp;gt;&lt;/pre&gt;&lt;p&gt;This change fixed the problem, and got our tests to run successfully.&lt;/p&gt;&lt;p&gt;I hope this is helpful to someone!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4746699721695217687?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4746699721695217687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/05/fix-spring-based-jndi-lookup-can-see.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4746699721695217687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4746699721695217687'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/05/fix-spring-based-jndi-lookup-can-see.html' title='Fix: Spring-based JNDI lookup can&amp;#39;t see .properties file'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2851457107254248576</id><published>2009-02-25T17:59:00.001-05:00</published><updated>2009-02-25T17:59:02.954-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jax-ws'/><category scheme='http://www.blogger.com/atom/ns#' term='spring'/><category scheme='http://www.blogger.com/atom/ns#' term='web services'/><category scheme='http://www.blogger.com/atom/ns#' term='cxf'/><category scheme='http://www.blogger.com/atom/ns#' term='weblogic'/><title type='text'>Getting JAX-WS to work with WebLogic 9.2</title><content type='html'>&lt;p&gt;I spent several hours at work today troubleshooting problems related to getting &lt;a href="http://en.wikipedia.org/wiki/JAX-WS"&gt;JAX-WS&lt;/a&gt; (as included with &lt;a href="http://cxf.apache.org/"&gt;Apache CXF&lt;/a&gt;) working in a Java web application running under &lt;a href="http://e-docs.bea.com/wls/docs92/index.html"&gt;BEA (Oracle) WebLogic 9.2&lt;/a&gt;.&amp;#160; This post contains a summary of the errors I encountered, and their resolutions -- hopefully this will save someone some of the troubleshooting time that I spent today.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Background&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Some brief background: I was building some new &lt;a href="http://en.wikipedia.org/wiki/SOAP"&gt;SOAP&lt;/a&gt; web service integrations into one of our internal Java applications, which runs on WebLogic server.&amp;#160; This application was the client side of the integration.&amp;#160; I used &lt;a href="http://www.springsource.org/"&gt;Spring&lt;/a&gt;, Apache CXF, and JAX-WS to build the integrations. &lt;/p&gt;  &lt;p&gt;I first coded the SOAP integrations into a simple stand-alone Java application, and that worked fine.&amp;#160; However, when I plugged my code and the CXF .jar files into the &amp;quot;real&amp;quot; application running on my local WebLogic server, I ran into a couple of errors.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Error #1: &amp;quot;java.lang.NoSuchMethodError: javax.jws.WebMethod.exclude&amp;quot;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Upon running my application under WebLogic 9.2, I got this error in the WebLogic server log file:&lt;/p&gt; &lt;tt&gt;org.springframework.beans.factory.BeanCreationException: Error creating    &lt;br /&gt;bean with name '&lt;em&gt;internalBeanName&lt;/em&gt;': Instantiation of bean failed;     &lt;br /&gt;nested exception is org.springframework.beans.factory.BeanDefinitionStoreException:     &lt;br /&gt;Factory method [public java.lang.Object org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create()]     &lt;br /&gt;threw exception; nested exception is java.lang.NoSuchMethodError: javax.jws.WebMethod.exclude()Z &lt;/tt&gt;  &lt;p&gt;This error turned out to be caused by the fact that in addition to the javax.jws.WebMethod class included in the geronimo-ws-metadata_2.0_spec-1.1.2.jar file included in the distribution of CXF that I downloaded, another (apparently older) implementation of that class is also included in the weblogic.jar file included with WebLogic 9.2.&amp;#160; WebLogic by default assigned priority to classes from its own weblogic.jar file over classes included with my application; as a result, WebLogic tried to use the older implementation of the javax.jws.WebMethod class, which does not include the exclude() method, and the NoSuchMethodError occurred when the other JAX-WS code tried to access that method.&lt;/p&gt;  &lt;p&gt;To fix this, I modified my weblogic.xml and weblogic-application.xml files, to instruct WebLogic to give priority to the JAX-WS implementation in my own supplied .jar files rather than its own JAX-WS implementation.&amp;#160; &lt;/p&gt;  &lt;p&gt;In my &lt;a href="http://e-docs.bea.com/wls/docs90/webapp/weblogic_xml.html"&gt;weblogic.xml&lt;/a&gt;, I added:&lt;/p&gt; &lt;tt&gt;&amp;lt;container-descriptor&amp;gt;    &lt;br /&gt;&amp;#160; &amp;lt;prefer-web-inf-classes&amp;gt;true&amp;lt;/prefer-web-inf-classes&amp;gt;     &lt;br /&gt;&amp;lt;/container-descriptor&amp;gt; &lt;/tt&gt;  &lt;p&gt;For more on this weblogic.xml change, see &lt;a href="http://ws.apache.org/axis2/1_3/app_server.html"&gt;documentation on a similar issue affecting Apache Axis&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;In my &lt;a href="http://e-generation.beasys.com/wls/docs90/programming/app_xml.html"&gt;weblogic-application.xml&lt;/a&gt;, I added:&lt;/p&gt; &lt;tt&gt;&amp;lt;prefer-application-packages&amp;gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;package-name&amp;gt;org.apache.xerces.*&amp;lt;/package-name&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;package-name&amp;gt;javax.jws.*&amp;lt;/package-name&amp;gt;     &lt;br /&gt;&amp;lt;/prefer-application-packages&amp;gt;&lt;/tt&gt;   &lt;p&gt;For more on this weblogic-application.xml change, see the &lt;a href="http://cwiki.apache.org/CXF20DOC/appserverguide.html#AppServerGuide-WebLogic"&gt;WebLogic configuration documentation in the CXF documentation&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Error #2: &amp;quot;Your JAXP provider [...] does not support XML Schema&amp;quot;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Having resolved the NoSuchMethodError, I re-deployed my application, and got this error upon running the app:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New" size="2"&gt;org.springframework.beans.factory.BeanDefinitionStoreException: Parser configuration exception parsing XML from class path resource [&lt;em&gt;mySpringContext.xml&lt;/em&gt;]; nested exception is javax.xml.parsers.ParserConfigurationException: Unable to validate using XSD: Your JAXP provider [org.apache.xerces.jaxp.DocumentBuilderFactoryImpl@&lt;em&gt;nnnnnnn&lt;/em&gt;] does not support XML Schema. Are you running on Java 1.4 with Apache Crimson? Upgrade to Apache Xerces (or Java 1.5) for full XSD support.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;The problem here was that there was an an old (2003) xerces.jar file present in my Java project, which contained an old JAXP provider class which did not support XSD.&amp;#160; &lt;/p&gt;  &lt;p&gt;To fix this, I deleted the old xerces.jar file, and redeployed the project.&amp;#160; (I also needed to delete WebLogic's cache, located on my machine at &lt;tt&gt;\bea\user_projects\domains\&lt;em&gt;mydomain&lt;/em&gt;\servers\&lt;em&gt;myserver&lt;/em&gt;\tmp&lt;/tt&gt;, to completely get rid of the old cached xerces.jar file.)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2851457107254248576?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2851457107254248576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/02/getting-jax-ws-to-work-with-weblogic-92.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2851457107254248576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2851457107254248576'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/02/getting-jax-ws-to-work-with-weblogic-92.html' title='Getting JAX-WS to work with WebLogic 9.2'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7520208616892485452</id><published>2009-02-11T18:01:00.003-05:00</published><updated>2009-02-12T00:23:22.996-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='investigation'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Still Key Jammin', 19 years later!</title><content type='html'>&lt;p&gt;I was just re-reading a piece of code that I'd written earlier today which attempts to detect duplicate customer records in a particular database table, when I came across a misspelling in a comment: I'd misspelled the word &amp;quot;duplicate&amp;quot; as &amp;quot;dupliate.&amp;quot;&amp;#160; I corrected the typo, and continued reading, when I came across another instance of the same misspelling: &amp;quot;dupliate&amp;quot; instead of &amp;quot;duplicate.&amp;quot;&amp;#160; &lt;/p&gt;  &lt;p&gt;Curious now, I did a search of the source file for other instances of the misspelled word &amp;quot;dupliate&amp;quot;; to my surprise, I found a LOT of instances of that misspelling (all in my own hand-entered comments, so not due to intellisense or copy-paste)!&amp;#160; At this point, I suspected that the problem was due to some factor beyond simple human error, so as an experiment, I tried just typing the word &amp;quot;duplicate&amp;quot; several times in a row (and paying attention to be sure that I actually was hitting the C key).&amp;#160; This was the output:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New" size="2"&gt;dupliate dupliate dupliate dupliate dupliate duplicate dupliate &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;The problem was reproducible almost every time.&amp;#160; I briefly experimented further:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The problem WAS reproducible in text editors other than my IDE (Eclipse).&amp;#160; &lt;/li&gt;    &lt;li&gt;The problem was NOT reproducible when I typed slowly and deliberately, being sure to hit each individual key one at a time.&lt;/li&gt;    &lt;li&gt;The problem was NOT reproducible using my machine's built-in keyboard (an IBM/Lenovo Thinkpad T60 laptop); only when using the external keyboard (a &amp;quot;standard&amp;quot; qwerty / U.S. layout black Dell-branded PS/2 keyboard, part number 04N454).&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I discovered that the specific problem was that while the L and I keys on the keyboard were being pressed, presses of the C key would be dropped/ignored.&amp;#160; I found that &lt;em&gt;every other &lt;/em&gt;letter key on the keyboard worked with L and I held down; just not C!&lt;/p&gt;  &lt;p&gt;So what was happening here was that in typing &amp;quot;duplicate,&amp;quot; I apparently was typing the C (with my left hand) before I'd let go of the L and I keys (with my right hand) -- or at least before the L and I keys had &amp;quot;popped back up&amp;quot; -- and consequently, the C key press was getting dropped.&lt;/p&gt;  &lt;p&gt;Now that I'd realized what was going on, I remembered that this is a typical hardware limitation of keyboards: certain keys cannot be pressed in combination with one another.&amp;#160; I hadn't thought about this in years and years -- since back when I used to play 2-player games on the PC that would have both players using the keyboard on the same PC simultaneously.&amp;#160; The old (1990) PC game Star Control actually came with a utility called &lt;a href="http://www.google.com/search?hl=en&amp;amp;safe=active&amp;amp;q=%22star+control%22+%22Key+Jammin%22"&gt;&amp;quot;Key Jamming&amp;quot;&lt;/a&gt; for working around this very issue: The utility would allow you to experimentally hold down various key combinations, and tell you which ones the PC could &amp;quot;see,&amp;quot; to allow you to customize the game's keyboard controls on your machine's keyboard such that players in a two-player game wouldn't end up &amp;quot;locking out&amp;quot; one another.&lt;/p&gt;  &lt;p&gt;It's unfortunate that the Dell 04N454 keyboard has this particular limitation.&amp;#160; I'm not sure what I can do to work around it, though, short of just needing to have extra awareness of my spelling (particularly in non-spell-checked environments such as IDEs) -- or else looking into using a different keyboard which isn't affected by this particular limitation!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7520208616892485452?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7520208616892485452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/02/still-key-jammin-19-years-later.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7520208616892485452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7520208616892485452'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/02/still-key-jammin-19-years-later.html' title='Still Key Jammin&amp;#39;, 19 years later!'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6440095404578198088</id><published>2009-02-08T02:47:00.001-05:00</published><updated>2011-06-30T23:50:04.597-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='overheat'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Wii Overheating and Powering Off due to Stuck Fan</title><content type='html'>&lt;p&gt;The past few weeks, my family has been having a problem with our Nintendo Wii game system at home: After being on and used to play games for an hour or two, the Wii would just shut itself off without warning.&amp;#160; The outer case of the Wii would be hot to the touch after the shut-off.&amp;#160; The obvious diagnosis was that the Wii was overheating, and powering itself off as a safety measure to avoid damaging the processor or other internal components due to the very high temperature.&amp;#160; A &lt;a href="http://www.nintendo.com/consumer/systems/wii/en_na/ts/power.jsp#no_power"&gt;Nintendo customer service article&lt;/a&gt; on the Wii provides support for this: &amp;quot;The system will shut down if it cannot vent properly to prevent overheating.&amp;quot;&lt;/p&gt;  &lt;p&gt;After the self-shutoff, the power light of the Wii on the front of its case would be off (not red or yellow, as is normally the case when the Wii is plugged in but powered off).&amp;#160; After the Wii had a few minutes to cool down while powered off, we could get it to power on again by removing and then re-plugging the power cord, but this was obviously only a temporary workaround, since it did nothing to address the root cause of the overheating.&lt;/p&gt;  &lt;p&gt;The vents on the back and bottom of the Wii appeared to be clear -- not clogged with dust or otherwise blocked.&amp;#160; However, I couldn't feel any air movement at all when putting my fingers near the vent at the back of the Wii while it was running.&amp;#160; My suspicion was that Wii's internal fan might be jammed with built-up dust, or not running properly for some other reason.&amp;#160; I couldn't determine whether or not this was the case by trying to peer through the vents in the back of the Wii, though.&lt;/p&gt;  &lt;p&gt;Reading further on the nintendo.com support site, Nintendo does offer an official repair service, but my Wii (according to the site, after entering my Wii's serial number) is out of warranty; Nintendo wanted US $75 to cover shipping and repair of the out-of-warranty Wii.&amp;#160; I wasn't terribly excited about the prospect of paying such a steep fee to have my not-yet-2-year-old Wii repaired.&lt;/p&gt;  &lt;p&gt;I searched around some more, and came across a great article, including pictures, on &lt;a href="http://www.somelifeblog.com/2008/06/nintendo-wii-tear-down-guide.html"&gt;how to disassemble a Wii&lt;/a&gt;, by Ken Hanscom.&amp;#160; Armed with this (thanks Ken!), and with the knowledge that my Wii was out of warranty anyway and therefore there was no warranty to be voided, I decided to set about disassembling my own Wii to be able to get at the fan, and try to diagnose and fix the problem myself.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="88" alt="Tri-wing screw" src="http://jonschneider.com/images/jsblog/ee4a0029ffd8_144A/Triwingscrew.png" width="98" align="right" border="0" /&gt;I did need to pick up one additional tool before starting the disassembly -- a &amp;quot;tri-wing&amp;quot; screwdriver, which previously I'd never heard of before.&amp;#160; The Wii and some other consumer electronics devices use tri-wing screws (shown at right) apparently as an attempted security measure to prevent customers from removing the screws and taking apart the devices, as most people don't own one of these screwdrivers, and most hardware stores don't carry them.&amp;#160; However, I was able to pick up a tri-wing screwdriver easily on eBay (searching on &lt;a href="http://shop.ebay.com/?_nkw=tri+wing+wii"&gt;tri wing wii&lt;/a&gt;) for a grand total of $1.88 including shipping -- almost certainly my most inexpensive online purchase ever that involved something being shipped to me!&lt;/p&gt;  &lt;p&gt;Following Ken's instructions, I was able to get the Wii disassembled without too much trouble.&amp;#160; I did run into a couple of problems along the way, though.&amp;#160; First, my micro-size Philips-head screwdriver was having problems getting a grip on the very first set of screws, on the outer Gamecube controller panel of the Wii; however, I ended up being able to use the flathead end of my micro-screwdriver to get those out.&lt;/p&gt;  &lt;p&gt;I also ran into a problem with the very last screw to be removed, one of the two tri-wing screws on the bottom of the Wii, in the front panel.&amp;#160; The screw was pretty well stuck in its socket, and I unfortunately managed to strip the screw head using the tri-wing screwdriver, such that I wasn't able to get a grip on the screw with any of my screwdrivers (or with my needle-nose pliers).&amp;#160; Finally, though, as I took a break to put my son Eli to bed, my wife Missy took a turn with the project, and discovered that the casing of the Wii would come apart without actually having to remove that particular screw.&amp;#160; So we were able to complete the disassembly without ever actually getting that screw out.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="328" alt="Wii_parts_bag" src="http://jonschneider.com/images/jsblog/ee4a0029ffd8_144A/Wii_parts_bag.jpg" width="350" align="right" border="0" /&gt;As I went along, I ended up putting the screws from each step of the process with their own small plastic bag, to avoid any possibility of getting them confused with one another when I went to reassemble the Wii later.&amp;#160; I also labeled each bag with instructions on where each screw in the bag came from.&amp;#160; This did turn out to make it easy to get the Wii back together at the end of the project.&lt;/p&gt;  &lt;p&gt; Finally, the Wii was opened up!&amp;#160; A front/side view:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="283" alt="Wii_naked_front_side" src="http://jonschneider.com/images/jsblog/ee4a0029ffd8_144A/Wii_naked_front_side.jpg" width="400" border="0" /&gt;&lt;/p&gt;  &lt;p&gt;A rear view:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="354" alt="Wii_naked_rear" src="http://jonschneider.com/images/jsblog/ee4a0029ffd8_144A/Wii_naked_rear.jpg" width="400" border="0" /&gt;&lt;/p&gt;  &lt;p&gt;The Wii's internal fan is visible at the bottom of the latter image.&amp;#160; The fan actually turned out to be very clean -- no visible built-up dust or grime at all.&amp;#160; However, when I tried turning the fan blade with my finger, the fan was &amp;quot;stuck&amp;quot;; it wouldn't move at all.&amp;#160; When I applied a bit more pressure, though, I could feel the fan suddenly become unstuck, and from that point on, it turned very freely -- even just blowing on the fan would get it spinning easily.&lt;/p&gt;  &lt;p&gt;I'm not sure how the fan had gotten stuck in the first place, but apparently, the stuck fan had been the problem!&amp;#160; I tested the Wii by putting the cover back on (although not putting all the screws back in just yet), powering it back up, and playing Rock Band 2 with Missy for about an hour; at the end of our session, the Wii outer cover was still cool to the touch.&amp;#160; (Previously, when the Wii was experiencing the overheating issue, playing for any length of time over a few minutes would cause the Wii's cover to become at least warm to the touch, if not hot.)&amp;#160; We were also to feel some slight air movement at the vent at the back of the Wii while it was on, and we could, listening closely, hear the fan spinning.&lt;/p&gt;  &lt;p&gt;I'll certainly keep an eye on the Wii's behavior over the coming days and weeks, but for now, the problem appears to be solved -- and without needing to send the Wii off for repairs for several days/weeks, or pay $75 to Nintendo!&amp;#160; I even managed to learn a few things, and pick up a cool new tool (the tri-wing screwdriver), in the process.&lt;/p&gt;  &lt;p&gt;If you have an out-of-warranty Wii that you suspect of having a fan problem similar to the one I've described in this post, I would suggest, as a first step before you consider disassembling it, that you power off the Wii, unplug it, and then use a very narrow screwdriver or similarly-shaped tool to reach through the vent at the back of the Wii and check, by gentle touch using your tool, whether the fan appears to be &amp;quot;stuck&amp;quot; as mine was; and if so, if you are able dislodge it by means of applying gentle pressure.&amp;#160; It would be an easy troubleshooting measure to try, before going to the time and effort of disassembling the Wii.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6440095404578198088?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6440095404578198088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/02/wii-overheating-and-powering-off-due-to.html#comment-form' title='55 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6440095404578198088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6440095404578198088'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/02/wii-overheating-and-powering-off-due-to.html' title='Wii Overheating and Powering Off due to Stuck Fan'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>55</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2009599288955800042</id><published>2009-02-03T17:11:00.002-05:00</published><updated>2009-02-04T12:09:12.856-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><title type='text'>How to prevent a web site from stealing the focus in Firefox</title><content type='html'>&lt;p&gt;At work, for a while now, I've had my Firefox 3 browser homepage set to a particular page in our internal &lt;a href="http://www.atlassian.com/software/confluence/"&gt;Confluence&lt;/a&gt; wiki.&amp;#160; This page is specially designed to be a &amp;quot;start page,&amp;quot; consisting solely of a series of links to commonly-used internal applications and documentation, plus a few search fields allowing common searches to be performed (of the wiki; of the employees database; of the Internet via Google).&amp;#160; I also have the &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/777"&gt;New Tab Homepage&lt;/a&gt; Firefox add-on installed, so this homepage appears when I open a new tab in Firefox.&lt;/p&gt;  &lt;p&gt;This setup works great, with one glaring exception: The page takes a couple of seconds to load, and Confluence automatically sets the focus to the first search field on the page when it completes loading.&amp;#160; The result of this is whenever I opened a new browser window or browser tab and started typing a URL in the address bar to manually navigate to a page (which I actually do fairly frequently), typically halfway through my typing in the address bar, the web page would steal the focus, and the second half of the URL I was typing would appear in the search field on the page instead of in the address bar.&lt;/p&gt;  &lt;p&gt;This problem isn't necessarily limited to a Confluence page set as a browser homepage; it could potentially occur with any web page that is coded to set the focus to a particular UI element on the page, such as the &lt;a href="http://google.com/"&gt;Google homepage&lt;/a&gt;.&amp;#160; Here's what might happen if I opened up a new browser window with the homepage set to Google, and started trying to type &amp;quot;http://localhost/&amp;quot; in the address bar as the page loaded:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="428" alt="browserStealFocus" src="http://jonschneider.com/images/jsblog/Howtopreventawebsitefromstealingthefocus_F120/browserStealFocus.png" width="562" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;Note that half of the &amp;quot;http://localhost&amp;quot; text appears in the address bar, but (in this example) after the &amp;quot;a&amp;quot; was typed the script web page made a call to the Javascript focus() method to set the focus to the search field, and Firefox honored this; as a result, the remainder of the typing appears in the search field -- the Google page managed to steal the focus.&lt;/p&gt;  &lt;p&gt;I went about searching for a solution to this problem, and ended up finding one in a &lt;a href="http://softwaresalariman.blogspot.com/2008/01/javascript-input-focus-annoyance.html"&gt;post on Kam-Hung Soh's blog&lt;/a&gt;.&amp;#160; Kam-Hung's post has instructions on how to disable a particular Javascript method for a particular web site.&amp;#160; &lt;/p&gt;  &lt;p&gt;I followed the instructions, and added the following to my Firefox &lt;a href="http://kb.mozillazine.org/User.js_file"&gt;user.js&lt;/a&gt; file:&lt;/p&gt; &lt;font size="-1"&gt;   &lt;pre&gt;user_pref(&amp;quot;capability.policy.policynames&amp;quot;, &amp;quot;noinputfocus&amp;quot;);
user_pref(&amp;quot;capability.policy.noinputfocus.sites&amp;quot;, &amp;quot;www.google.com&amp;quot;);
user_pref(&amp;quot;capability.policy.noinputfocus.HTMLInputElement.focus&amp;quot;, &amp;quot;noAccess&amp;quot;);&lt;/pre&gt;&lt;/font&gt;&lt;p&gt;(In my case, I used the URL of my team's internal Confluence wiki site instead of &amp;quot;www.google.com&amp;quot;).&lt;/p&gt;&lt;p&gt;After doing this, I was all set!&amp;#160; I no longer had my focus stolen after opening a new browser window or a new tab. (Thanks, Kam-Hung!)&lt;/p&gt;&lt;p&gt;Obviously, these instructions are Firefox-specific, and therefore aren't helpful for addressing this issue in other browsers.&amp;#160; However, when I tried to reproduce the issue in Internet Explorer 7, I was unable to do so -- in cases where I had started typing in the address bar as IE7 loaded the page, the web page never gained the focus.&amp;#160; Perhaps IE has some intelligent logic where it will ignore focus() calls made by the web page in the case where the user has already started typing something in the address bar?&amp;#160; It would be really nice to see all browsers implement such a feature, to avoid the need for workarounds such as the one described in this post.&lt;/p&gt;  
&lt;p&gt;&lt;b&gt;Update 2/4/2009:&lt;/b&gt; I took a look, and there is in fact &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=125282"&gt;a bug in the Firefox Bugzilla database&lt;/a&gt; for this issue.  It was initially reported back in &lt;i&gt;2002&lt;/i&gt;, though, so I'm not super optimistic about the bug being fixed in the near future.  :-)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2009599288955800042?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2009599288955800042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/02/how-to-prevent-web-site-from-stealing.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2009599288955800042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2009599288955800042'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/02/how-to-prevent-web-site-from-stealing.html' title='How to prevent a web site from stealing the focus in Firefox'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5414908590612699345</id><published>2009-01-02T12:18:00.002-05:00</published><updated>2010-03-13T10:35:33.143-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='rock band'/><title type='text'>Rock Band 2 for Wii: Guitar Hero 3 Guitar is Compatible!</title><content type='html'>&lt;p&gt;I got a copy of &lt;a href="http://www.amazon.com/Rock-Band-2-Nintendo-Wii/dp/B001BXA9CE?SubscriptionId=0K3WGSQ14TC610NZTNR2&amp;tag=jonschneiderc-20&amp;linkCode=xm2&amp;camp=2025&amp;creative=165953&amp;creativeASIN=B001BXA9CE"&gt;Rock Band 2&lt;/a&gt; Special Edition for the Wii for Christmas this year (thanks to my beautiful wife, Missy!).&amp;#160; The Special Edition bundle includes the game disc, the drum set, the microphone, and one guitar.&lt;/p&gt;&lt;p&gt;The one other guitar that I already own, an &amp;quot;official&amp;quot; &lt;a href="http://www.guitarherogame.com/gh3/"&gt;Guitar Hero 3&lt;/a&gt; guitar that was packaged with my copy of Guitar Hero 3 for Wii, &lt;em&gt;does&lt;/em&gt; work successfully with Rock Band 2 for Wii!&amp;#160; It &amp;quot;just works&amp;quot; -- no special configuration or setup was necessary.&amp;#160; So with the Rock Band 2 Special Edition set plus the Guitar Hero 3 guitar, my family has been able to play Rock Band 2 with the full four-person band (singer, lead guitar, bass guitar, drums).&amp;#160; &lt;/p&gt;&lt;p&gt;Really excellent job by the folks at &lt;a href="http://www.harmonixmusic.com/"&gt;Harmonix&lt;/a&gt; for taking the time and effort to make the Guitar Hero 3 guitar compatibility work, and also for making the Wii version of Rock Band 2 feature-equivalent to the XBox 360 and PS3 versions!&amp;#160; Thanks, guys!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5414908590612699345?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5414908590612699345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2009/01/rock-band-2-for-wii-guitar-hero-3.html#comment-form' title='16 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5414908590612699345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5414908590612699345'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2009/01/rock-band-2-for-wii-guitar-hero-3.html' title='Rock Band 2 for Wii: Guitar Hero 3 Guitar is Compatible!'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>16</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8191850283753455758</id><published>2008-12-30T16:57:00.003-05:00</published><updated>2008-12-30T17:05:19.448-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><title type='text'>Fix: InvocationTargetException in Eclipse while using CVS</title><content type='html'>&lt;p&gt;I ran into an issue while using Eclipse 3.3 today where Eclipse was throwing a java.lang.reflect.InvocationTargetException while trying to get another version of a project using Eclipse's built-in CVS client.  I initially encountered the error after pressing the "Refresh Tags" button on the "Replace with Branch or Version" dialog.&lt;/p&gt;  &lt;p&gt;&lt;img style="border: 0px none ;" alt="InvocationTargetException thrown by Eclipse trying to do a 'Refresh Tags'" src="http://www.jonschneider.com/images/jsblog/EclipseInvocationTargetException.png" border="0" width="585" height="157" /&gt; &lt;/p&gt;  &lt;p&gt;Some brief experimentation revealed that I wasn't able to do any CVS operations from within Eclipse.  Either I would get the above error, or else the operation would just silently fail.&lt;/p&gt;  &lt;p&gt;Checking the Eclipse log file (at &lt;em&gt;workspace&lt;/em&gt;\.metadata\.log) showed that a "Connection refused: HTTP/1.1 403 Forbidden" error was occurring whenever I tried to perform a CVS operation.&lt;/p&gt;  &lt;p&gt;This error message turned out to be the key; there was an issue with Eclipse's proxy settings.  In the Preferences dialog (Window menu | Preferences), under General | Network Connections, in the "No Proxy for" section, I needed to add the hostname of my CVS server.  &lt;/p&gt;  &lt;p&gt;After adding the hostname of my proxy server in the Network Connections section of the Preferences dialog, CVS operations in Eclipse once again stared working properly.  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8191850283753455758?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8191850283753455758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/12/fix-invocationtargetexception-in.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8191850283753455758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8191850283753455758'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/12/fix-invocationtargetexception-in.html' title='Fix: InvocationTargetException in Eclipse while using CVS'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6838841023810671569</id><published>2008-12-04T13:00:00.001-05:00</published><updated>2008-12-04T13:03:38.348-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Adding a 3rd Monitor to a Laptop</title><content type='html'>&lt;p&gt;Back in September, I set up about researching how I might be able to add a 3rd monitor to my laptop PC at work, a Lenovo (IBM) ThinkPad T60.&lt;/p&gt;  &lt;p&gt;The built-in video card on the laptop PC, an ATI Mobility Radeon X1300, supports only dual monitors.&amp;#160; The card can run the built-in laptop LCD display plus one external monitor, or two external monitors (via the additional DVI port on the machine's docking station), but not two external monitors &lt;em&gt;and&lt;/em&gt; the built-in LCD at the same time.&lt;/p&gt;  &lt;p&gt;Since simply opening up the case and popping an additional video card into a free PCI-e or PCI slot isn't an option with this laptop machine like it would be with a desktop machine, I considered several alternative solutions:&lt;/p&gt;  &lt;h4&gt;Docking Station PCI Card&lt;/h4&gt;  &lt;p&gt;I first considered purchasing a new docking station, the &lt;a href="http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-61232"&gt;Thinkpad Advanced Dock&lt;/a&gt;, which supports adding a standard PCI-e card directly to the dock; then plugging a PCI-e video card into the dock, and running the 3rd monitor off of that.&amp;#160; &lt;/p&gt;  &lt;p&gt;However, this solution was cost-prohibitive (around US $380 for the dock -- not including the cost of a PCI-e video card).&amp;#160; I also ran across multiple reports from Thinkpad owners trying and failing to get this solution working on the official Lenovo forums (particularly in &lt;a href="http://forums.lenovo.com/lnv/board/message?board.id=T_Series_Thinkpads&amp;amp;thread.id=41"&gt;this thread&lt;/a&gt;).&lt;/p&gt;  &lt;h4&gt;PCMCIA Video Card&lt;/h4&gt;  &lt;p&gt;Next, I looked into the possibility of getting a PCMCIA video card for my laptop's free PCMCIA slot, such as the &lt;a href="http://www.villagetronic.com/vtbook/index.html"&gt;VillageTronic VTBook&lt;/a&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;However, I was somewhat concerned that the card might &amp;quot;stick out&amp;quot; of the side of my laptop, making the laptop a hassle to carry around with the card installed.&amp;#160; I was also concerned about potential difficulties with docking/undocking the machine (which I do a few times a week) while using the card.&amp;#160; Finally, the VTBook solution was also somewhat cost-prohibitive (around US $250).&lt;/p&gt;  &lt;h4&gt;My solution: USB Video Card&lt;/h4&gt;  &lt;p&gt;The solution that I finally settled on was to purchase a USB 2.0 video card.&amp;#160; This is a self-enclosed video card with a USB connection on one end to connect to the PC, and a DVI port on the other for connecting a monitor.&amp;#160; The specific model I picked up was an &lt;a href="http://www.amazon.com/IOGEAR-GUC2020DW6-External-Video-Card/dp/B0016B6722?tag=jonschneiderc-20&amp;amp;linkCode=sp1&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0016B6722"&gt;IOGEAR model GUC2020DW6 external video card&lt;/a&gt;.&amp;#160; The price was right (particularly compared to the other available laptop multiple-monitor solutions I considered): the IOGEAR card was on sale for about US $80 when I purchased it back in early October 2008 (and it's even lower now, down to &lt;a href="http://www.amazon.com/IOGEAR-GUC2020DW6-External-Video-Card/dp/B0016B6722?tag=jonschneiderc-20&amp;amp;linkCode=sp1&amp;amp;camp=2025&amp;amp;creative=165953&amp;amp;creativeASIN=B0016B6722"&gt;US $68 on Amazon&lt;/a&gt;, as I write this post).&amp;#160; &lt;/p&gt;  &lt;p&gt;I've had the card for just about two months now, and it's been working great -- better than I expected!&amp;#160; I had been concerned that there might be noticeable display &amp;quot;lag&amp;quot; on the monitor connected by the USB video card, but in practice, there's no noticeable difference when working on the USB-connected monitor or working with one of the others.&amp;#160; The only time that I notice the difference is when dragging a window around on the USB-connected monitor; there is just a bit of &amp;quot;lag&amp;quot; as the window moves around the screen.&lt;/p&gt;  &lt;p&gt;Here's the card, connected, behind my PC, along with a penny to help show the size of the device (apologies for the low quality cellphone-cam photo):&lt;/p&gt;  &lt;p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="305" alt="IOGEAR_GUC2020DW6" src="http://jonschneider.com/images/jsblog/Addinga3rdMonitortoaLaptop_FFC9/IOGEAR_GUC2020DW6.png" width="594" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;And here's the 3-monitor setup at my desk at work, using the external USB video card to drive one of the external monitors:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="480" alt="WorkDeskTripleMonitors" src="http://jonschneider.com/images/jsblog/Addinga3rdMonitortoaLaptop_FFC9/WorkDeskTripleMonitors.jpg" width="640" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;USB video cards do have known limitations with displaying very rapidly-updating content (e.g. movies, 3D games) due to the limited throughput of USB 2.0, so I wouldn't purchase one of these cards to use on a gaming machine.&amp;#160; However, I knew that I'd only be using this monitor for business use: Writing code, viewing documents, doing email, surfing the web; that type of thing.&amp;#160; Also, in the event that I do want to view some rapidly-changing content that the adapter can't handle well, I can always just put that content on one of my other monitors.&lt;/p&gt;  &lt;h4&gt;Footnote&lt;/h4&gt;  &lt;p&gt;I got some great help in my research on this issue by posing the question of &lt;a href="http://stackoverflow.com/questions/76267/hardware-solutions-for-adding-a-third-monitor-to-a-laptop"&gt;ways to add a 3rd monitor to a laptop&lt;/a&gt; over on &lt;a href="http://stackoverflow.com/"&gt;StackOverflow&lt;/a&gt;, a fairly new community-run site for asking and answering programming and programming-related questions.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6838841023810671569?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6838841023810671569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/12/adding-3rd-monitor-to-laptop.html#comment-form' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6838841023810671569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6838841023810671569'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/12/adding-3rd-monitor-to-laptop.html' title='Adding a 3rd Monitor to a Laptop'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6699036163922994973</id><published>2008-11-30T13:52:00.002-05:00</published><updated>2008-12-02T17:05:09.080-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='new PC build'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Troubleshooting new PC bluescreens</title><content type='html'>&lt;p&gt;When I first got my &lt;a href="http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html"&gt;custom-built new PC&lt;/a&gt; running 64-bit Vista put together a few weeks ago, everything seemed to be running great: It was very fast and responsive, all of the hardware components appeared to be working, and I could play 3D games on the system with no errors.&lt;/p&gt;  &lt;p&gt;However, after a few days of using the system, it became clear that there was a problem: On four occasions, after I left the machine running overnight, I woke up in the morning to find that the machine had bluescreened while it was unattended overnight.&amp;#160; Each time, I found that all of my open programs/windows had closed, and a error dialog was open with a message saying that the machine had bluescreened (using that term, &amp;quot;bluescreened&amp;quot;!).&amp;#160; (However, on two occasions, the machine ran ok overnight, without bluescreening.)&lt;/p&gt;  &lt;p&gt;Also, on one occasion, the machine bluescreened while I was actively using it, while I was playing a game of &lt;a href="http://www.bioniccommando.com/en/pages/BCR_Game_Overview"&gt;Bionic Commando: Rearmed&lt;/a&gt;, which was especially aggravating.&lt;/p&gt;  &lt;p&gt;I really dislike system instability.&amp;#160; I've always placed a premium on stability on systems I build; while troubleshooting and tracking down problems can sometimes be interesting, I'd much rather be spending my time on my computer to work on a project, or to play a game.&amp;#160; So, I set out to track down and fix the cause of the bluescreens.&amp;#160; (Note: This is the time that having a custom-built machine can be &amp;quot;interesting&amp;quot; -- if I couldn't figure out the cause of the issue, I wouldn't have the fallback option of dialing up a vendor's 1-800 number to get help dealing with the problem!)&lt;/p&gt;  &lt;h4&gt;Bad RAM?&lt;/h4&gt;  &lt;p&gt;My first thought was that one of the sticks of RAM in the system might be bad, or maybe that the two sets of two RAM sticks that I had put into the machine -- a set of 2 2GB sticks from Corsair, and a set of 2 2GB sticks from Crucial (8 GB total) -- were incompatible with one another.&amp;#160; I wasn't terribly happy about this prospect, since it would involve additional troubleshooting which stick(s) of RAM were responsible for the problem, and then having to ship the parts back to the store for a replacement or a refund -- something I've never needed to do before.&lt;/p&gt;  &lt;p&gt;I decided to use a memory test utility to try and determine whether there really was a RAM issue.&amp;#160; I found a nice &lt;a href="http://www.shivaranjan.com/2007/11/01/windows-vista-how-to-scan-test-your-ram-or-memory-with-windows-vista-memory-diagnostic-tool/"&gt;blog post&lt;/a&gt; by Shivaranjan Bhoopathy detailing &lt;a href="http://www.shivaranjan.com/2007/11/01/windows-vista-how-to-scan-test-your-ram-or-memory-with-windows-vista-memory-diagnostic-tool/"&gt;Vista's built-in memory diagnostic tool&lt;/a&gt; (thanks Shivaranjan!).&amp;#160; I had been previously unaware of this utility; I'd had it in mind that I'd need to find a 3rd-party utility to do the job.&lt;/p&gt;  &lt;p&gt;I ran the utility (which was designed to run after a reboot of the machine, and then automatically running the utility on the subsequent boot before Windows loads).&amp;#160; To my relief, the utility reported that all of my RAM was ok!&amp;#160; However, this meant that I needed to continue looking for the cause of the bluescreens.&lt;/p&gt;  &lt;h4&gt;Heat Issue?&lt;/h4&gt;  &lt;p&gt;My experience over the years has shown that weird, sometimes-reproducible, sometimes-not, hardware-related issues are often attributable to overheating.&amp;#160; &lt;/p&gt;  &lt;p&gt;I found a nice, free utility for Windows, &lt;a href="http://www.almico.com/speedfan.php"&gt;SpeedFan&lt;/a&gt;, which gives a readout of CPU temperature (among other features).&amp;#160; SpeedFan reported that my two CPUs were running at a temperature of between 70 and 75 degrees C -- very hot, dangerously so, for the CPU!&amp;#160; &lt;/p&gt;  &lt;p&gt;I also rebooted the machine, entered the built-in BIOS utility program as the machine was booting, and checked the temperature there; the BIOS utility program confirmed that the CPU temperature was a very high 70+ degrees C. &lt;/p&gt;  &lt;p&gt;So, at this point I thought I'd found the cause of the problem; the only question was how to fix it.&amp;#160; I turned off the machine, opened up the case, and checked the heatsink.&amp;#160; I found that the heatsink was slightly loose -- I was able to wiggle it back and forth slightly with my fingers; if I had installed the heatsink correctly, then I shouldn't have been able to move it at all.&amp;#160; &lt;/p&gt;  &lt;p&gt;The problem turned out to be that two of the four &amp;quot;posts&amp;quot; on the corners of the heatsink which bolt the heatsink tightly down against the surface of the CPU were not tightened down all of the way.&amp;#160; As a result, the heatsink wasn't making tight contact against the CPU surface, and consequently wasn't doing a good job of drawing the heat away from the CPU.&amp;#160; &lt;/p&gt;  &lt;p&gt;I properly tightened down the heatsink, and confirmed that it was now tightly bolted down against the CPU surface, and couldn't be &amp;quot;wiggled.&amp;quot;&amp;#160; I turned the machine back on, and monitored the temperature with SpeedFan.&amp;#160; This time, the CPU temperature never rose above 40-45 degrees C, even after the machine had been on for a while.&amp;#160; Much better!&lt;/p&gt;  &lt;p&gt;Unfortunately, after I left the machine on overnight once again, I came back to it in the morning to find that it had, once again, bluescreened while it was unattended overnight.&amp;#160; This meant that I needed to continue looking for the cause of the issue.&amp;#160; &lt;/p&gt;  &lt;h4&gt;BIOS and Network Driver Update&lt;/h4&gt;  &lt;p&gt;At this point, I was running out of ideas of things to check.&amp;#160; I had been doing some large file copies over the network while the machine was unattended overnight (copying photos and music files from my old PC to the new one); I thought that maybe a problem with the network driver or the machine BIOS might be responsible for the bluescreening problems.&lt;/p&gt;  &lt;p&gt;I visited the &lt;a href="http://www.foxconnchannel.com/support/downloads.aspx"&gt;Foxconn downloads site&lt;/a&gt; (my motherboard manufacturer's site), and downloaded a new Network driver and installed that; then (unfortunately violating the troubleshooting principle of &amp;quot;only change one thing at a time between tests&amp;quot;), I also downloaded and installed an updated BIOS, using the Foxconn LiveUpdate utility, also from the Foxconn site.&lt;/p&gt;  &lt;p&gt;After the BIOS update, I was afraid momentarily that I had &amp;quot;bricked&amp;quot; my motherboard when, after the machine rebooted following the update, I was presented with a scary-looking error message following the machine's power-on self-tests:&lt;/p&gt;  &lt;p&gt;&lt;tt&gt;CMOS Checksum Bad&lt;/tt&gt;&lt;/p&gt;  &lt;p&gt;However, after some hurried research via Google search (on another machine), this error message turned out only to represent a notification that the machine's BIOS had been updated.&amp;#160; I was able to just bypass the error and continue to boot into Windows, and the machine was fine.&lt;/p&gt;  &lt;p&gt;This notification is a good thing, in the case that I might have had a virus that had performed a BIOS update (for who-knows-what purposes).&amp;#160; However, (1) the error message was somewhat unnecessarily scary/unhelpful, and (2) it might have been nice if the Foxconn update utility would have warned me about the message in advance, so I didn't have to get so worried upon seeing it!&amp;#160; &lt;/p&gt;  &lt;p&gt;The same &amp;quot;CMOS Checksum Bad&amp;quot; error message appeared again upon a subsequent boot, but I was (apparently) able to clear it simply by going into the machine's boot-time BIOS utility, and then doing a save-and-exit from the utility (without changing anything).&lt;/p&gt;  &lt;h4&gt;Conclusion&lt;/h4&gt;  &lt;p&gt;In any event, after installing the BIOS and Network driver updates, I've had no further bluescreening problems!&amp;#160; The machine has been rock-solid stable ever since -- just the way I like it.&lt;/p&gt;  &lt;p&gt;I can conclude that either or both of the BIOS and Network driver updates was responsible for fixing the problem -- although as I noted earlier, it would have been nice if I'd performed the updates one at a time, so I could better conclude what the specific solution to the problem was.&lt;/p&gt;  &lt;p&gt;I'm also happy in retrospect that the bluescreens occurred, since it led me to discovering the heat issue with the machine and the improperly-installed heatsink; if I hadn't noticed that, letting the machine run for a long period of time at 70+ degrees C might have had a significant negative impact on the life of the CPU.&amp;#160; I also got to discover a couple of cool utilities that I hadn't been previously aware of, namely, the built-in Vista memory diagnostic tool, and the SpeedFan temperature-monitoring utility.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-6699036163922994973?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/6699036163922994973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/11/troubleshooting-new-pc-bluescreens.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6699036163922994973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/6699036163922994973'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/11/troubleshooting-new-pc-bluescreens.html' title='Troubleshooting new PC bluescreens'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4497593720558449574</id><published>2008-11-30T11:30:00.001-05:00</published><updated>2008-11-30T11:31:52.997-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='new PC build'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Fix: Front Audio Panel doesn't work on Foxconn P45A-S Motherboard</title><content type='html'>&lt;p&gt;After recently &lt;a href="http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html"&gt;building my new PC&lt;/a&gt;, one of the few problems I had is that the front audio connection on the PC wasn't working.&amp;#160; The PC case (a XION II XON-101) included an audio jack on the front panel of the case, and the motherboard (a Foxconn P45A-series) supported that front audio connection, but when I would plug in headphones to the front audio jack, nothing would happen; sound would continue playing through the speakers (connected via the PC's back panel audio jack), and no sound would come through the speakers connected to the front audio jack.&lt;/p&gt;  &lt;p&gt;I opened up the case and double-checked that the audio cables from the front panel of the case were properly connected to the motherboard, but everything appeared to be fine.&lt;/p&gt;  &lt;p&gt;After some Google searching, I ended up finding the clue to the solution in a post near the bottom of this &lt;a href="http://forums.whirlpool.net.au/forum-replies-archive.cfm/718821.html"&gt;forums.whirlpool.net.au forum thread&lt;/a&gt;: A manufacturer-specific audio driver needed to be installed, instead of the default Microsoft driver provided with Vista.&amp;#160; &lt;/p&gt;  &lt;p&gt;Checking my motherboard manual, I found that the onboard audio was provided by &lt;a href="http://www.realtek.com.tw/"&gt;Realtek&lt;/a&gt;. I downloaded the Realtek audio driver from the &lt;a href="http://www.foxconnchannel.com/support/downloads.aspx"&gt;Foxconn support site&lt;/a&gt;, installed it, and the problem was solved!&amp;#160; Audio now plays properly through the headphones when headphones are plugged into the front audio jack.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4497593720558449574?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4497593720558449574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/11/fix-front-audio-panel-doesn-work-on.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4497593720558449574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4497593720558449574'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/11/fix-front-audio-panel-doesn-work-on.html' title='Fix: Front Audio Panel doesn&amp;#39;t work on Foxconn P45A-S Motherboard'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8929090717021138144</id><published>2008-11-20T00:14:00.001-05:00</published><updated>2008-11-30T11:33:20.498-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='new PC build'/><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>New PC 2008! Budget: Sub-$700</title><content type='html'>&lt;p&gt;Earlier this month, I built a new PC to use as my primary home desktop machine.&amp;#160; It was the 3rd PC build I've done, with the earlier builds having been in 2004 and in 2000.&amp;#160; &lt;/p&gt;  &lt;p&gt;One of my goals for this build was to keep the budget under $700 (not including a monitor).&amp;#160; This is the parts list that I ended up with:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="661" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="115"&gt;Motherboard&lt;/td&gt;        &lt;td valign="top" width="326"&gt;Foxconn P45A-S LGA 775 Intel ATX &lt;/td&gt;        &lt;td valign="top" width="56"&gt;$110&lt;/td&gt;        &lt;td valign="top" width="159"&gt;newegg.com&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="117"&gt;Processor&lt;/td&gt;        &lt;td valign="top" width="326"&gt;Intel Core 2 Duo E7200 Wolfdale 2.53GHz&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$80&lt;/td&gt;        &lt;td valign="top" width="159"&gt;frys.com (on sale)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="118"&gt;RAM&lt;/td&gt;        &lt;td valign="top" width="326"&gt;Corsair 4 GB (2x 2GB) DDR2-800 (PC2 6400) TWIN2X4096-6400C5DHX&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$26&lt;/td&gt;        &lt;td valign="top" width="158"&gt;frys.com (on sale)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="120"&gt;&amp;#160;&lt;/td&gt;        &lt;td valign="top" width="326"&gt;Crucial 4 GB (2x 2GB) DDR2-800 (PC2 6400)&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$30&lt;/td&gt;        &lt;td valign="top" width="158"&gt;frys.com (on sale)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="121"&gt;Hard Drive&lt;/td&gt;        &lt;td valign="top" width="326"&gt;Western Digital 1 TB SATA2 16 MB Cache&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$120&lt;/td&gt;        &lt;td valign="top" width="158"&gt;newegg.com&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="121"&gt;Video Card&lt;/td&gt;        &lt;td valign="top" width="326"&gt;XFX GeForce 9800 GT 512 MB &lt;/td&gt;        &lt;td valign="top" width="56"&gt;$110&lt;/td&gt;        &lt;td valign="top" width="158"&gt;newegg.com&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="121"&gt;DVD-RW Drive&lt;/td&gt;        &lt;td valign="top" width="326"&gt;LG|GH20NS15 20X SATA&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$23&lt;/td&gt;        &lt;td valign="top" width="158"&gt;newegg.com (on sale)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="121"&gt;OS&lt;/td&gt;        &lt;td valign="top" width="326"&gt;Vista 64-bit Home Premium (OEM)&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$100&lt;/td&gt;        &lt;td valign="top" width="158"&gt;newegg.com&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="121"&gt;Case + &lt;acronym title="power supply unit"&gt;PSU&lt;/a&gt;&lt;/acronym&gt;&lt;/td&gt;        &lt;td valign="top" width="326"&gt;XION II Black Steel ATX Mid Tower&lt;/td&gt;        &lt;td valign="top" width="56"&gt;$60&lt;/td&gt;        &lt;td valign="top" width="160"&gt;newegg.com&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Total cost of all parts and software: $659&lt;/p&gt;  &lt;p&gt;Everything else that I needed either came integrated on the motherboard (sound, network) or else was &amp;quot;recycled&amp;quot; from my previous machine (monitor, mouse, keyboard, &lt;acronym title="uninterruptable power supply"&gt;UPS&lt;/acronym&gt;, XBox 360 USB gamepad).&lt;/p&gt;  &lt;p&gt;Here are the assembled goods, just prior to the build: &lt;/p&gt;  &lt;p align="center"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="334" alt="NewPC2008_TheGoods" src="http://jonschneider.com/images/jsblog/NewPC2008BudgetSub700_E0/NewPC2008_TheGoods.jpg" width="400" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;I was able to snag the good deals (at least as of this month, 11/2008!) on the processor and RAM via my RSS subscription to &lt;a href="http://slickdeals.net"&gt;slickdeals.net&lt;/a&gt;; I knew that I was going to be building the machine in November, so when those deals came across Slickdeals in October, I snapped them up.&lt;/p&gt;  &lt;p&gt;I also was able to save some money on the cost of the system by putting all of the individual parts on my birthday wish list; I got some of the components for my birthday, saving me from having to buy them.&amp;#160; (Thanks very much Dad, Dad-in-law K., and Jeremy!)&lt;/p&gt;  &lt;p&gt;I snapped a few more pics during the early stages of assembling the machine.&amp;#160; The empty case:&lt;/p&gt;  &lt;p align="center"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="279" alt="NewPC2008_EmptyCase" src="http://jonschneider.com/images/jsblog/NewPC2008BudgetSub700_E0/NewPC2008_EmptyCase.jpg" width="400" border="0" /&gt; &lt;/p&gt;  &lt;p align="left"&gt;The motherboard (Foxconn P45A-S), fresh out of the box, with no parts inserted yet:&lt;/p&gt;  &lt;p align="center"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="300" alt="NewPC2008_EmptyMobo" src="http://jonschneider.com/images/jsblog/NewPC2008BudgetSub700_E0/NewPC2008_EmptyMobo.jpg" width="370" border="0" /&gt; &lt;/p&gt;  &lt;p align="left"&gt;The motherboard with the CPU (Intel Core 2 Duo E7200) and heatsink mounted, in the case:&lt;/p&gt;  &lt;p align="center"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="393" alt="NewPC2008_CpuInMoboInCase" src="http://jonschneider.com/images/jsblog/NewPC2008BudgetSub700_E0/NewPC2008_CpuInMoboInCase.jpg" width="400" border="0" /&gt; &lt;/p&gt;  &lt;p align="left"&gt;So far, I'm really enjoying 64-bit Vista.&amp;#160; With the 8 GB of RAM and the other parts I put into the system, it runs very smoothly -- as fast, if not faster, than XP ran on my old 2004 machine that was built on a similar budget.&amp;#160; In particular, Vista seems to start up (from a cold boot) noticeably faster than XP used to.&amp;#160; Based on my experience so far, I'd recommend Vista over XP for anyone purchasing a new desktop machine, at least for any machine with better than low-range specs.&lt;/p&gt;  &lt;p align="left"&gt;I did have an initial issue with the machine bluescreening on a few occasions when I left it running overnight, which I've since resolved; I'll detail my experiences in troubleshooting that issue, and the eventual solution, in a future post.&lt;/p&gt;  &lt;p align="left"&gt;With the set of hardware in this build, I have a Vista &lt;a href="http://www.microsoft.com/windows/windows-vista/get/experience-index.aspx"&gt;Windows Experience Index&lt;/a&gt; score of 5.4 overall: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;5.4 Processor&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;5.9 RAM&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;5.9 Graphics&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;5.9 Gaming Graphics&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;5.9 Hard Disk&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;This is pretty much in line with my expectations; the nice thing is that I picked out a motherboard which will allow me to upgrade to a faster, quad core, processor in a couple of years should I feel the need to do so.&amp;#160; (With the good deal that I got on the processor that I bought, upgrading from the 2.54 GHz processor I bought to even a 3.0 GHz would have run me around an additional $80 -- double the price of what I paid -- so I'm happy with the deal I got, even if the processor is slightly &amp;quot;underpowered&amp;quot; compared to the rest of the machine.)&lt;/p&gt;  &lt;p align="left"&gt;In practice, the machine has run very smoothly with several of my older games that I've tried out on it that chugged a bit on my older system, such as Oblivion and Titan Quest; I was also pleasantly surprised to find that the machine also runs Call of Duty 4, a fairly new game which was included with the GeForce 9800 that I bought, very smoothly as well, even on &amp;quot;high&amp;quot; settings.&amp;#160; Hopefully this computer will turn out to be serviceable for use as a gaming machine for at least a few years (in addition to its roles as a hobbyist development machine, and general household use PC)!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8929090717021138144?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8929090717021138144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8929090717021138144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8929090717021138144'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/11/new-pc-2008-budget-sub-700.html' title='New PC 2008! Budget: Sub-$700'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8282781779264408510</id><published>2008-10-29T22:11:00.008-04:00</published><updated>2009-11-22T07:58:57.704-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='linksys BEFW11S4'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Fix: Can't connect to any sites with a 64.x.x.x IP address</title><content type='html'>Yesterday, my wife Melissa noticed a problem with our home Internet connection: certain websites, including my own &lt;a href="http://jonschneider.com"&gt;jonschneider.com&lt;/a&gt;, would not load.  The browser would get past the "looking up..." step (so DNS resolution was working fine), but the website would simply never respond to the HTTP request, and the browser would eventually give a "Network Timeout - The server at [site] is taking too long to respond" error. &lt;div style="text-align:center"&gt;&lt;img src="http://jonschneider.com/images/jsblog/NetworkTimeout.jpg" alt="Network 
Timeout screen cap" style="border:solid"/&gt;&lt;/div&gt;Troubleshooting the issue this evening, I started to notice a pattern in the sites that were working, versus those that were not working:  &lt;h4 style="font-size: 120%"&gt;Working Sites&lt;/h4&gt;&lt;table style="border:1px solid #202020;width:420px"&gt;&lt;tr&gt;&lt;th style="border: 1px inset #202020"&gt;Site&lt;/th&gt;&lt;th style="border: 1px inset #202020"&gt;IP Address&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://charter.com"&gt;charter.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;24.217.29.127&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://godaddy.com"&gt;godaddy.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;208.109.132.201&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://umich.edu"&gt;umich.edu&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;141.211.13.226&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://yahoo.com"&gt;yahoo.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;206.190.60.37&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://blog.jonschneider.com"&gt;blog.jonschneider.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;209.85.133.191&lt;/td&gt;&lt;/table&gt;&lt;h4 style="font-size: 120%"&gt;Non-Working Sites&lt;/h4&gt;&lt;table style="border:1px solid #202020;width:420px"&gt;&lt;tr&gt;&lt;th style="border: 1px inset #202020"&gt;Site&lt;/th&gt;&lt;th style="border: 1px inset #202020"&gt;IP Address&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://jonschneider.com"&gt;jonschneider.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;64.202.163.124&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://savingsangel.com"&gt;www.savingsangel.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;64.20.60.82&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://gametap.com"&gt;gametap.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;64.236.22.82&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;idp.godaddy.com&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;64.202.188.237&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border: 1px inset #202020"&gt;&lt;a href="http://www.google.com"&gt;www.google.com&lt;/a&gt;&lt;/td&gt;&lt;td style="border: 1px inset #202020"&gt;64.233.169.103&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;Did you spot the pattern?  (If not, take a closer look at the IP addresses.)  Once I started looking at the IP addresses of the working sites versus the non-working sites, it quickly became obvious: Attempts to connect to sites with 64.x.x.x IP addresses were not working, whereas all other sites that I tried worked just fine.  I had never heard of an issue like this before.  I initially didn't really have a good idea where along the pipeline of [Client PC] - [Router] - [Cable Modem] - [ISP] - [Internet] - [Web Server] the problem was likely to be.   &lt;br /&gt;
&lt;br /&gt;
&lt;p&gt;It wasn't just http requests that were failing; I couldn't successfully ping, tracert, or connect via ftp to any of the "non-working" sites, either.  I was able to successfully connect to some of the sites from work; plus, given that if a site like the google.com homepage had any significant downtime at all it was likely to immediately be big news, and there had been no such news, I was able to rule out the web server as the problem.  I was able to reproduce the problem on a couple of different client machines and different web browsers from home, so that (most likely) ruled out the client PC as the issue.  My suspicion at this point was some kind of problem at the ISP level; I figured that since I was able to browse some websites with no problem at all, my router and cable modem must be ok.    &lt;br /&gt;
&lt;br /&gt;
&lt;p&gt;This turned out to be a bad assumption.  I had tried "rebooting" the cable modem (by disconnecting the power, waiting a couple of minutes, and then reconnecting) early in the troubleshooting process, but that step had had no effect.    Throughout the process, I had assumed my router was ok.  However, when I used the router's browser-based administration application to try and perform a release/renew on its Internet IP address, and the application simply stopped responding after the new request, I immediately (and to my chagrin, for the first time) suspected some kind of problem with the router.  &lt;b&gt;I cycled the power on the router (unplug, wait briefly, plug back in), and that turned out to be the solution!&lt;/b&gt;  Immediately, all of the 64.x.x.x sites were working fine once again. &lt;br /&gt;
&lt;br /&gt;
&lt;p&gt;I'm still not sure &lt;i&gt;why&lt;/i&gt; cycling the power on the router was the solution to the issue, except that to guess that apparently, after weeks (or maybe even months) of uptime, the router had managed to get itself into a bad state, and cycling the power was enough to refresh whatever internal memory the router has back into a good state.  Hopefully, this post will be a time saver for anyone else out there who manages to run across this issue -- at least, so long as this blog doesn't get changed to have a 64.x.x.x IP address!  :-)  I have had various problems with this router -- a Linksys BEFW11S4 Wireless-B that's now over a couple of years old -- before (&lt;a href="http://blog.jonschneider.com/2007/03/at-wits-end-with-wii-wireless.html"&gt;1&lt;/a&gt;, &lt;a href="http://blog.jonschneider.com/2006/05/giving-up-on-dhcp-with-linksys.html"&gt;2&lt;/a&gt;, &lt;a href="http://blog.jonschneider.com/2006/02/issue-linksys-wireless-b-router-quits.html"&gt;3&lt;/a&gt;).  I think it may be time to start keeping my eyes open for a sale, and jump on a deal to replace this router when the right deal presents itself.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8282781779264408510?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8282781779264408510/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/10/fix-cant-connect-to-any-sites-with.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8282781779264408510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8282781779264408510'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/10/fix-cant-connect-to-any-sites-with.html' title='Fix: Can&apos;t connect to any sites with a 64.x.x.x IP address'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4275725022972391594</id><published>2008-10-15T00:57:00.005-04:00</published><updated>2010-12-09T12:41:59.379-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='clipboard'/><category scheme='http://www.blogger.com/atom/ns#' term='windows search'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Jon's Top 8 Windows XP Customizations</title><content type='html'>&lt;p&gt;Although I am currently in the process of building a new PC for home, which will run 64-bit Vista and will become my new primary home PC, as of now (October 2008), I am still running Windows XP as my primary operating system both at home and at work. In recent years, I've accumulated a collection of software that in one way or another enhances the basic, low-level Windows XP user experience, and allows me to be more productive (or to just enjoy using my machines more!)&lt;/p&gt;&lt;p&gt;This post details my Top 8 Windows XP customizations. Some of these may apply to Vista as well; once I have my new machine up and running with Vista for a while, I'll reprise this post and report which of these customizations are still useful under Vista, and which ones are no longer needed. There might also be some new additions to the list; time will tell!&lt;/p&gt;&lt;p&gt;Note: Large applications such as Firefox are outside the scope of this list; I'm focusing in here on items that modify the behavior of Windows itself, or are otherwise basic utilities or tools that tweak the way that I use Windows.&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#8: &lt;a href="http://www.ntwind.com/software/windowspace.html"&gt;WindowSpace&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Homepage: &lt;a href="http://www.ntwind.com/software/windowspace.html"&gt;http://www.ntwind.com/software/windowspace.html&lt;/a&gt;     &lt;br /&gt;
Author: Alexander Avdonin     &lt;br /&gt;
Supported Operating Systems: Vista, XP, 2000; 32-bit and 64-bit versions available     &lt;br /&gt;
Price: US $34.90 (30-day free trial available)&lt;/h5&gt;&lt;p&gt;WindowSpace provides the cool feature of having windows &amp;quot;snap&amp;quot; to the edges of the screen, and to other windows, as you drag or resize windows using the mouse as you normally would. This is nice for taking advantage of the real estate of your screen area; before using WindowSpace, I would typically leave &amp;quot;dead space&amp;quot; between the borders of my non-maximized windows and the edges of my screen, because it was a nuisance to try to position a window exactly against an edge of the screen. Alexander really nailed the feel of how the &amp;quot;snap&amp;quot; behavior works; it feels very natural and intuitive. It also works just fine with multiple monitors.&lt;/p&gt;&lt;p&gt;WindowSpace also provides some handy global hotkeys for resizing a window via the keyboard such that it is positioned against a desired edge of the current screen, and for other functionality related to window positioning and sizing, which can be remappend, and enabled or disabled.&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#7: &lt;a href="http://www.microsoft.com/windows/products/winfamily/desktopsearch/default.mspx"&gt;Windows Search 4&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Homepage: &lt;a href="http://www.microsoft.com/windows/products/winfamily/desktopsearch/default.mspx"&gt;http://www.microsoft.com/windows/products/winfamily/desktopsearch/default.mspx&lt;/a&gt;     &lt;br /&gt;
Author: Microsoft     &lt;br /&gt;
Supported Operating Systems: 2003, XP     &lt;br /&gt;
Price: Free&lt;/h5&gt;&lt;p&gt;This is essentially the nice, fast desktop search built into Vista, back-ported to Windows XP.&lt;/p&gt;&lt;p&gt;I have had an occasional issue with Windows Search 4 not finding an item that I &lt;i&gt;know&lt;/i&gt; is present on my local hard drive (including items that have been around for a while, so it isn't an issue of the Windows Search indexer just not yet having added a newly-created document to its index); but for the most part, this is a great (and free!) improvement over the default local search functionality that ships with Windows XP. &lt;/p&gt;&lt;p&gt;Note: Windows Search 4 does by default add a somewhat unsightly, screen-real-estate-consuming search field to the Windows Taskbar; I posted previously about &lt;a href="http://blog.jonschneider.com/2008/07/how-to-hide-windows-search-4-search-bar.html"&gt;how to hide the search field&lt;/a&gt;. I use the Win+F (&amp;quot;find&amp;quot;) shortcut key to bring up Windows Search when I need it. &lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#6: XP Black (&amp;quot;Zune&amp;quot;) Style/Theme&lt;/h4&gt;&lt;h5&gt;Homepage: None; direct download link: &lt;a href="http://go.microsoft.com/fwlink/?LinkID=75078"&gt;http://go.microsoft.com/fwlink/?LinkID=75078&lt;/a&gt;     &lt;br /&gt;
Author: Microsoft     &lt;br /&gt;
Supported Operating Systems: XP     &lt;br /&gt;
Price: Free&lt;/h5&gt;&lt;p&gt;Rather than a utility or functionality enhancement, this just plain makes Windows XP look cooler. This Black (or &amp;quot;Zune&amp;quot;) style gives you another alternative to the default blue XP style (and the built-in silver and olive alternative styles) and the gray &amp;quot;classic&amp;quot; style. It was apparently developed by Microsoft to promote their Zune portable media player (hence the name). Even if you're not a Zune fan (I'm not a Zune owner, myself), this black style makes Windows XP look a lot sharper.&lt;/p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="452" alt="Zune Theme" src="http://jonschneider.com/images/jsblog/ZuneTheme.png" width="404" border="0" /&gt;   &lt;p&gt;The theme doesn't currently seem to have a homepage anywhere on the Microsoft site, but you can still download the file directly from the Microsoft site, here: &lt;a href="http://go.microsoft.com/fwlink/?LinkID=75078"&gt;http://go.microsoft.com/fwlink/?LinkID=75078&lt;/a&gt; (ZuneDesktopTheme.msi; 1.6 MB)&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#5: &lt;a href="http://download.cnet.com/ClipPath/3000-2094_4-10050927.html"&gt;ClipPath&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Author: Suresh Online     &lt;br /&gt;
Supported Operating Systems: XP, 2000, NT, ME, 98, 95     &lt;br /&gt;
Price: Freeware&lt;/h5&gt;&lt;p&gt;ClipPath adds an option to the right-click menu of Windows Explorer when a file or folder is clicked: &amp;quot;Clip Path&amp;quot; (to the clipboard). This is very useful to essentially get a reference to a filesystem file on the clipboard, which you can then paste directly into the &amp;quot;File | Open&amp;quot; dialog of another application (rather than using the dialog's GUI to drill all the way back through the filesystem to the file's location).&lt;/p&gt;&lt;p&gt;I previously discussed ClipPath in a &lt;a href="http://blog.jonschneider.com/2008/02/utility-of-day-clippath.html"&gt;Utility of the Day&lt;/a&gt; post.&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#4: &lt;a href="http://www.ntwind.com/software/taskswitchxp.html"&gt;TaskSwitchXP&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Homepage: &lt;a href="http://www.ntwind.com/software/taskswitchxp.html"&gt;http://www.ntwind.com/software/taskswitchxp.html&lt;/a&gt;     &lt;br /&gt;
Author: Alexander Avdonin     &lt;br /&gt;
Supported Operating Systems: 2003, XP     &lt;br /&gt;
Price: Freeware&lt;/h5&gt;&lt;img alt="TaskSwitchXP" src="http://jonschneider.com/images/jsblog/TaskSwitchXP.png" border="0" /&gt;   &lt;p&gt;TaskSwitchXP is a great improvement to the default Alt+Tab interface provided in Windows XP. It supports several nice enhancements over the basic XP Alt+Tab interface:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Display of the full Titlebar text of all applications (not just the selected one), in addition to the application's icon; &lt;/li&gt;
&lt;li&gt;A preview of the appearance of the selected application's window; &lt;/li&gt;
&lt;li&gt;Allows an application to be selected via a mouse click (instead of only via Alt+Tab and Alt+Shift+Tab); &lt;/li&gt;
&lt;li&gt;Better support for many (22 or more) open applications. &lt;/li&gt;
&lt;/ul&gt;&lt;h4 style="font-size: 120%"&gt;#3: &lt;a href="http://ditto-cp.sourceforge.net/"&gt;Ditto&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Homepage: &lt;a href="http://ditto-cp.sourceforge.net/"&gt;http://ditto-cp.sourceforge.net/&lt;/a&gt;     &lt;br /&gt;
Author: Open Source (project admin: &lt;a href="http://sourceforge.net/project/memberlist.php?group_id=84084"&gt;Maloney&lt;/a&gt;)     &lt;br /&gt;
Supported Operating Systems: Vista(?), XP, 2000, NT, 98, 95     &lt;br /&gt;
Price: Freeware&lt;/h5&gt;&lt;p&gt;Ditto enhances the Windows clipboard such that when an item is placed on the clipboard, whatever was on the clipboard previously isn't lost, but is instead saved into a persistent storage area. A global Ditto Paste hotkey (I use Ctrl+Alt+V) can be set up to bring up Ditto's paste interface, which allows you to quickly paste an item that was stored to the clipboard recently, or even to do a search on older clipboard items and paste one of those. I didn't use Ditto heavily right after I installed it, but I've found that over time, I've come to rely on and take advantage of the productivity benefits of old clipboard items not being erased when something new gets saved to the clipboad.&lt;/p&gt;&lt;p&gt;I previously posted about Ditto in a &lt;a href="http://blog.jonschneider.com/2008/03/utility-of-day-ditto.html"&gt;Utility of the Day&lt;/a&gt; post.&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#2: &lt;a href="http://www.freewebs.com/nerdcave/taskbarshuffle.htm"&gt;Taskbar Shuffle&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Homepage: &lt;a href="http://nerdcave.webs.com/"&gt;http://nerdcave.webs.com/&lt;/a&gt;     &lt;br /&gt;
Author: Jay E.     &lt;br /&gt;
Supported Operating Systems: Vista, XP, 2000, NT, 98, 95; 32-bit versions only     &lt;br /&gt;
Price: Freeware&lt;/h5&gt;&lt;p&gt;I originally downloaded this utility for one reason: I wanted the ability to close applications from the Windows Taskbar by middle-clicking them (just like you can do in Firefox and other tabbed applications); after all, what is the Windows Taskbar if not a tabbed view of the system's open Windows applications? Taskbar Shuffle enables this middle-click-to-close behavior for taskbar tabs. Much easier than doing right-click | Close on many open applications (especially for those applications that put the &amp;quot;Close&amp;quot; option somewhere non-standard on the right-click menu).&lt;/p&gt;&lt;p&gt;I've since started also Taskbar Shuffle for its primary purpose: Moving taskbar buttons around on the taskbar via drag-drop. The most obvious use case for this is moving my mail client back to its position at the top-left corner of the taskbar (where I always expect it to be!) after it crashes and I re-open it.&lt;/p&gt;&lt;p&gt;Unfortunately, Taskbar Shuffle doesn't currenly support 64-bit versions of Windows. &lt;a href="http://taskix.robustit.com/"&gt;Taskix&lt;/a&gt; is an alternative which apparently has very similar functionality to Taskbar Shuffle and does support 64-bit Windows (including Vista), but I haven't tried it out yet myself.&lt;/p&gt;&lt;b&gt;Update 7/1/2009&lt;/b&gt;: A 64-bit version is now available!  Nice!  &lt;a href="http://nerdcave.webs.com/"&gt;Go check it out.&lt;/a&gt;  &lt;p&gt;I previously covered Taskbar Shuffle in a &lt;a href="http://blog.jonschneider.com/2008/02/utility-of-day-taskbar-shuffle.html"&gt;Utility of the Day&lt;/a&gt; post.&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;#1: &lt;a href="http://www.stevemiller.net/puretext/"&gt;PureText&lt;/a&gt;&lt;/h4&gt;&lt;h5&gt;Homepage: &lt;a href="http://www.stevemiller.net/puretext/"&gt;http://www.stevemiller.net/puretext/&lt;/a&gt;     &lt;br /&gt;
Author: Steve Miller     &lt;br /&gt;
Supported Operating Systems: Vista, 2003, XP, 2000, NT, ME, 98, 95     &lt;br /&gt;
Price: Freeware &lt;/h5&gt;&lt;p&gt;PureText does just one thing, and does it very well: It sets up a global hotkey for &amp;quot;Paste unformatted text.&amp;quot;&amp;#160; It takes the text that you previously copied to the clipboard and pastes it into the current application, but without any rich text markup that might be stored in the clipboard along with the text.&amp;#160; &lt;/p&gt;&lt;p&gt;I typically use this at least on a daily basis, sometimes many times per day. For example:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Paste some code from Visual Studio or Eclipse into MS Word, without getting the font and background color from the IDE. &lt;/li&gt;
&lt;li&gt;Paste text from Word into another document (such as an email, a Powerpoint presentation slide, or a cell in an Excel sheet) in the current font of the target document, instead of the font from the Word document. &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;PureText allows you to assign the hotkey that will be used for this operation.&amp;#160; I use the default of Win+V.&lt;/p&gt;&lt;p&gt;The net result of the operation is like pasting the text into a plain notepad.exe window, and then re-copying and pasting it from Notepad into the target document; or like the MS Office menu option Edit | Paste Special | As Unformatted Text; but in a single, easy, step.&amp;#160; Also, unlike the MS Office solution, PureText works regardless of the target application of the Paste is.&lt;/p&gt;&lt;h4 style="font-size: 120%"&gt;Conclusion&lt;/h4&gt;&lt;p&gt;In my experience with these utilities, each of them has been rock-solid stable. I place a premium on stability of my system, and have had nothing but good experiences with each one of these customizations.&lt;/p&gt;&lt;p&gt;I hope this list of utilities is useful; if a utility on this list is new to you and sounds interesting, I'd encourage you to &amp;quot;be bold&amp;quot; and go ahead and give it a try. If you end up seeing a net productivity benefit, great! If not, the uninstallers are there for a reason. :-)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4275725022972391594?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4275725022972391594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/10/jon-top-8-windows-xp-customizations.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4275725022972391594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4275725022972391594'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/10/jon-top-8-windows-xp-customizations.html' title='Jon&amp;#39;s Top 8 Windows XP Customizations'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3931726542165642543</id><published>2008-09-08T17:20:00.001-04:00</published><updated>2008-09-08T17:21:35.485-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><category scheme='http://www.blogger.com/atom/ns#' term='authentication'/><title type='text'>How to: Get Firefox to discard a cached set of basic authentication credentials</title><content type='html'>&lt;p&gt;While using Firefox 3 to work with a web application that uses &lt;a href="http://en.wikipedia.org/wiki/Basic_access_authentication"&gt;basic authentication&lt;/a&gt; for access control earlier today, I wanted to be able to log in to the application as a different user account without needing to close and restart Firefox in order to get it to stop automatically resending the authentication data from my original login.&amp;nbsp; (After logging in to a site via basic authentication, Firefox will automatically continue to resend the credentials from that login on any subsequent requests to that same site, until the browser is shut down.)&lt;/p&gt; &lt;p&gt;After hunting around for a while looking for a Firefox extension that would do this, I discovered a way to do this built into Firefox itself: In the Tools menu, select Clear Private Data; then in the Clear Private Data dialog that appears, check the Authenticated Sessions checkbox, &lt;em&gt;clear all other checkboxes&lt;/em&gt;, and click the Clear Private Data Now button.&lt;/p&gt; &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="315" alt="ClearPrivateDataAuthenticatedSessions" src="http://jonschneider.com/images/jsblog/HowtoGetFirefoxtodiscardacachedsetofbasi_F3BF/ClearPrivateDataAuthenticatedSessions.png" width="457" border="0"&gt; &lt;/p&gt; &lt;p&gt;This will get Firefox to "throw away" its saved basic authentication credentials from the current session, and allow you to log in as another user, without having to close Firefox.&amp;nbsp; I've found this to be handy when I have a lot of Firefox tabs open, and don't want to shut down Firefox (and close all of my open tabs in the process) just to "log out" of the basic authentication session that I have open in a particular tab.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3931726542165642543?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3931726542165642543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/09/how-to-get-firefox-to-discard-cached.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3931726542165642543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3931726542165642543'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/09/how-to-get-firefox-to-discard-cached.html' title='How to: Get Firefox to discard a cached set of basic authentication credentials'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5670536077635970802</id><published>2008-08-28T18:09:00.001-04:00</published><updated>2008-08-28T18:11:56.674-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>UI Annoyance: Unselectable text in a disabled form field</title><content type='html'>&lt;p&gt;A usability annoyance that I've encountered on a few occasions is a disabled field on an desktop or web application form which doesn't allow text in the field to be selected, and therefore, prevents the value in the field from being copy &amp;amp; pasted to another location.&amp;nbsp; (This side-effect of not allowing a clipboard copy of the field's value may or may not be above and beyond the developer's intention of simply not allowing the contents of the field to be modified).&lt;/p&gt; &lt;p&gt;For example, the web application server &lt;a href="http://edocs.bea.com/wls/docs92/index.html"&gt;WebLogic Server 9&lt;/a&gt; (WLS9) includes a web-based administrative console where database connection strings and other settings for hosted applications can be defined.&amp;nbsp; In the WLS9 console, one user at a time can obtain a lock on the console, preventing other users from concurrently making conflicting changes; when the current user does not have the lock, all editable fields are disabled.&amp;nbsp; In this state, field values can't be selected and copied to the clipboard.&amp;nbsp; This effectively prevents the user from doing things like copying settings from admin console form fields to another WebLogic instance, or copying a hosted application's settings from the console to document them in the application's internal documentation.&amp;nbsp; &lt;/p&gt; &lt;p&gt;There's no reason that the WLS9 console needed to be coded to prevent clipboard copying of values in this way; after all, the disabled field values are still visible, and the user can always just manually read and retype them elsewhere.&amp;nbsp; It's just an annoyance for the user to have to do manual retyping of values (such as long, complex database connection strings) when they could be using a clipboard copy to get the values.&lt;/p&gt; &lt;h4&gt;HTML form fields: Disabled vs. Readonly&lt;/h4&gt; &lt;p&gt;In HTML, an &lt;tt&gt;input type="text"&lt;/tt&gt; field can be set with the attributes &lt;tt&gt;disabled&lt;/tt&gt; or &lt;tt&gt;readonly&lt;/tt&gt;.&amp;nbsp; The attributes have similar behavior; both prevent the field contents from being modified.&amp;nbsp; One key difference, though, is that the &lt;tt&gt;readonly&lt;/tt&gt; attribute still allows the value in the field to be selected (and copied to the clipboard); the &lt;tt&gt;disabled&lt;/tt&gt; attribute may prevent the value from being selected and clipboard copied, depending on the client browser's implementation.&amp;nbsp; (For example, Firefox 3 prevents the value from being selected; Internet Explorer 6 does allow the value to be selected.)&lt;/p&gt; &lt;p&gt;Try dragging with the mouse inside each of these fields, to see what behavior your browser allows:&lt;/p&gt; &lt;form&gt; &lt;p&gt;&lt;tt&gt;&amp;lt;input type="text" value="Try selecting this text" readonly&amp;gt;&lt;/tt&gt; : &lt;input readonly value="Try selecting this text"&gt;&lt;/p&gt; &lt;p&gt;&lt;tt&gt;&amp;lt;input type="text" value="Try selecting this text" disabled&amp;gt;&lt;/tt&gt; : &lt;input disabled value="Try selecting this text"&gt;&lt;/p&gt;&lt;/form&gt; &lt;h4&gt;Conclusion&lt;/h4&gt; &lt;p&gt;Web application developers, before using the &lt;tt&gt;disabled&lt;/tt&gt; attribute on a text input field on a web form, consider whether your users may ever want to clipboard copy the value in cases when the field is disabled.&amp;nbsp; If so, consider using the &lt;tt&gt;readonly&lt;/tt&gt; attribute instead.&lt;/p&gt; &lt;p&gt;The same principle holds true for desktop application developers as well.&amp;nbsp; Consider whether your users will ever want to clipboard copy values from your disabled form fields when defining the behavior of whether the field values can be selected or not while disabled.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5670536077635970802?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5670536077635970802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/08/ui-annoyance-unselectable-text-in.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5670536077635970802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5670536077635970802'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/08/ui-annoyance-unselectable-text-in.html' title='UI Annoyance: Unselectable text in a disabled form field'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2329214163187887858</id><published>2008-08-19T17:42:00.002-04:00</published><updated>2008-08-19T21:44:03.687-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='windows media player'/><title type='text'>Workaround: Windows Media Player sound cuts out when Cisco VPN client v4.x is active</title><content type='html'>&lt;p&gt;I had the opportunity to work from home today.&amp;nbsp; It was nice to change up my routine and get a good bit of mostly-uninterrupted work done.&amp;nbsp; The best part was probably getting to spend a full hour at lunchtime having lunch with my wife Melissa and my kids!&lt;/p&gt; &lt;p&gt;I did run into two issues during the course of day, though.&amp;nbsp; One was that the Charter cable modem service decided to go out for an hour or so in the afternoon (and the VOIP phone service along with it); there wasn't much I could do about that aside from work offline and wait it out.&lt;/p&gt; &lt;p&gt;The other issue was a strange one; while listening to mp3s on my local C: drive in Windows Media Player 11 (WMP), the playback would work fine for a minute or two, but then the sound would cut out.&amp;nbsp; The song would still apparently be playing (as evidenced by the track position slider continuing to advance), but I'd get only silence from my speakers or earphones.&amp;nbsp; Sounds from other Windows apps would still play as normal.&amp;nbsp; If I clicked Stop and then Play in WMP, or Previous Track / Next Track, the sound would come back for another minute or two, and then cut out again.&amp;nbsp; This behavior happened regardless of whether WMP was minimized or not, or whether it was in full mode or skin mode.&amp;nbsp; &lt;/p&gt; &lt;p&gt;I also noticed that when the sound playback cut out, the wmplayer.exe process (the Windows Media Player process) would peg the CPU it was running on; I could see in Task Manager that one of the two CPUs (on my dual-core machine) would go to 100% utilization, with wmplayer.exe accounting for 50% of my overall CPU usage (100% of 1 of the 2 CPUs).&amp;nbsp; If I stopped the playback or brought the sound back by clicking Previous Track / Next Track, the CPU utilization would go back to normal (less than 5%).&amp;nbsp; I tried pointing SysInternals' &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx"&gt;Process Monitor&lt;/a&gt; at wmplayer.exe while WMP was in the "pegged" state, but it didn't turn up any errors or any behavior that I could readily identify as unusual.&lt;/p&gt; &lt;p&gt;Since I use Windows Media Player on my laptop docked at my desk at work every day, I figured that the problem was probably related either to working with the laptop undocked, or else had something to do with my VPN connection to my office's intranet.&amp;nbsp; I ended up just getting out my iPod and listening to my music on that instead as a workaround.&lt;/p&gt; &lt;p&gt;At the end of the day, though, I came back and investigated the issue.&amp;nbsp; (It just bugs me when something on my machine isn't working the way it should be!)&amp;nbsp; Various Google web searches for combinations of terms including "windows media player", "100% cpu", "sound cuts out", and "vpn" didn't turn up anything useful, but when I searched for "vpn" on the &lt;a href="http://groups.google.com/group/microsoft.public.windowsmedia.player"&gt;microsoft.public.windowsmedia.player&lt;/a&gt; newsgroup, I came across what turned out for me to be the key to the solution: a &lt;a href="http://groups.google.com/group/microsoft.public.windowsmedia.player/browse_thread/thread/c760d7e5ab057143/46e102fcdc564691"&gt;2005 post by "bsmaloney"&lt;/a&gt; describing nearly-identical behavior to what I was seeing.&amp;nbsp; bsmaloney didn't post a solution, but he mentioned that he was using a version 4.x &lt;i&gt;Cisco&lt;/i&gt; VPN client.&amp;nbsp; This is what I was using as well!&amp;nbsp; It hadn't occurred to me up to that point that the problem might be attributable to a specific vendor's VPN implementation, rather than the fact that I was connected via a VPN in general.&lt;/p&gt; &lt;p&gt;I went back to Google and searched on &lt;a href="http://www.google.com/search?q=&amp;quot;windows+media+player&amp;quot;+vpn+cisco"&gt;"windows media player" vpn cisco&lt;/a&gt;, and sure enough, the #1 result was a &lt;a href="http://www.cisco.com/en/US/docs/security/vpn_client/cisco_vpn_client/vpn_client500_501/release/notes/51client.html"&gt;Cisco VPN client release notes page&lt;/a&gt; listing that an issue related to Windows Media Player playback had been fixed in version 5.0.00.0340 of the Cisco client.&amp;nbsp; The release notes also mentioned that the problem would occur when either the SRS WOW or Graphic Equalizer were enabled.&lt;/p&gt; &lt;p&gt;It wasn't an option for me to upgrade to version 5 of the Cisco VPN client, since the standard at my office is still the 4.x version.&amp;nbsp; However, I checked in WMP, and I did in fact have the Graphic Equalizer enabled.&amp;nbsp; I turned that off (View menu | Enhancements | Graphic Equalizer), and playback has been working fine since then!&lt;/p&gt; &lt;p&gt;As a side note, the Cisco release notes page refers to the bugs it describes as "&lt;a href="http://www.merriam-webster.com/cgi-bin/dictionary?caveat"&gt;caveats&lt;/a&gt;."&amp;nbsp; I thought that was kind of cute.&amp;nbsp; "Defects" and "issues" I've heard of before, but the using term "caveats" to describe software bugs was a new one on me!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2329214163187887858?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2329214163187887858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/08/workaround-windows-media-player-sound.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2329214163187887858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2329214163187887858'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/08/workaround-windows-media-player-sound.html' title='Workaround: Windows Media Player sound cuts out when Cisco VPN client v4.x is active'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1221370605041966957</id><published>2008-08-12T00:41:00.004-04:00</published><updated>2008-08-12T00:59:11.167-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><title type='text'>Really impressive live Internet-delivered Olympics video</title><content type='html'>I just watched the most impressive (quality-wise) Internet-delivered video I've yet seen -- and live video, at that!  It's the coverage of the 2008 Olympics over at &lt;a href="http://www.nbcolympics.com/"&gt;nbcolympics.com&lt;/a&gt;.  To watch, follow that link and pick one of the events on the left column of the homepage with a red "live" tag next to it.  (Video on the site might be available to USA-based visitors only -- I'm not sure.)

The video is very high-quality for browser-delivered video -- both large size and high resolution.  Much nicer than the typical YouTube fare (small size, grainy quality) that I would normally associate with watching video on the Web.

There was no audio commentary for the event I was watching (Judo), but there was a text-based commentary, plus a live scoring summary.  The video also included instant replay of the action, just like you'd expect in the coverage of any sporting event.  Really impressive overall presentation.  Kudos to the NBC team for pulling this together, and to Microsoft for providing the Silverlight technology that the video is running on.

If you haven't seen it yet, I would suggest making it a point to head over to the NBC site and watching for at least a few minutes at some point before the Olympics are over!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1221370605041966957?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1221370605041966957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/08/really-impressive-live-internet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1221370605041966957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1221370605041966957'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/08/really-impressive-live-internet.html' title='Really impressive live Internet-delivered Olympics video'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3165299124898787527</id><published>2008-08-05T14:16:00.001-04:00</published><updated>2008-08-05T14:16:12.592-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='msoffice'/><title type='text'>Excel tip: Shift+F2 = Edit Cell Comment</title><content type='html'>&lt;p&gt;A quick tip for Microsoft Excel that I've just found, and is currently making my life easier: Shift+F2 jumps to editing the cell comment (note / annotation) for the current cell.&lt;/p&gt; &lt;p&gt;This is a lot nicer than having to go over to the mouse and right-click on a cell, then choose "Edit Comment" (or "Insert Comment" in the case of a cell that doesn't have a comment yet) from the context menu when doing heavy editing work on an Excel sheet.&lt;/p&gt; &lt;p&gt;This works in Excel 2003; it might also work in other Excel versions as well.&lt;/p&gt; &lt;p&gt;Bonus tip: F2 alone (without holding Shift) edits the existing value in the current cell.&amp;nbsp; This is another time-saver that allows you to edit the value in a cell without having to move over to the mouse.&amp;nbsp; &lt;/p&gt; &lt;p&gt;The use of F2 to mean "edit the current value" is a semi-standard that works in many other Windows applications as well.&amp;nbsp; For example, F2 in Windows Explorer begins editing the name of the selected file or folder (to allow the file or folder to be renamed).&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3165299124898787527?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3165299124898787527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/08/excel-tip-shiftf2-edit-cell-comment.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3165299124898787527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3165299124898787527'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/08/excel-tip-shiftf2-edit-cell-comment.html' title='Excel tip: Shift+F2 = Edit Cell Comment'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2809562575542442724</id><published>2008-07-24T13:25:00.002-04:00</published><updated>2011-04-04T11:58:13.890-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><title type='text'>Don't treat Underscore as a word separator character on double-click</title><content type='html'>&lt;p&gt;In just about all modern text-reading and text-writing applications, a double-left-click with the mouse on a word in the text causes that word to become selected.&amp;nbsp; Double-clicking a word in this manner is handy for quickly selecting a word in order to copy-and-paste or cut-and-paste it elsewhere, or to just delete the word.&amp;nbsp; (If you've never used double-click in this way before, go ahead and give it a try on one of the words in this post, right here in your web browser.)&lt;/p&gt;&lt;p&gt;I've recently noticed that not all applications handle double-click-selection of words that contain an underscore character (the character "_"; also called "underbar") in the same way.&amp;nbsp; Such words are frequently used by software developers for naming such things as variables and database fields; examples are max_records and customer_id.&amp;nbsp; &lt;/p&gt;&lt;p&gt;In some applications, double-clicking on any portion of a word containing an underscore results in the entire word being selected.&amp;nbsp; This is the behavior I want, since it lets me easily cut or copy the entire identifier elsewhere.&amp;nbsp; (For example, taking the example of the max_records identifier, if I double-click the word, it's far more common that what I'm trying to do is select and copy "max_records" for pasting elsewhere, rather than just "max" or just "records".)&amp;nbsp; The text editor &lt;a href="http://www.flos-freeware.ch/notepad2.html"&gt;Notepad2&lt;/a&gt; works this way (shown here after a double-click on the word "max"):&lt;/p&gt;&lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="187" alt="underscore_notepad2" src="http://jonschneider.com/images/jsblog/Underscoreisnotawordseparatorcharacter_B4B3/underscore_notepad2.jpg" width="316" border="0"&gt; &lt;/p&gt;&lt;p&gt;The problem is that in some applications, double-clicking a word containing an underscore results in just the clicked portion of the word becoming selected; the underscore gets treated as a word separator character (like a space character would be treated).&amp;nbsp; &lt;a href="http://www.mozilla.com/firefox/"&gt;Firefox 3&lt;/a&gt; works this way (again, shown after a double-click on "max"):&lt;/p&gt;&lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="189" alt="underscore_firefox" src="http://jonschneider.com/images/jsblog/Underscoreisnotawordseparatorcharacter_B4B3/underscore_firefox.jpg" width="316" border="0"&gt;&lt;/p&gt;&lt;p&gt;Since typical (non-developer) users are seldom or never going to be working with documents with words that include underscore characters (and therefore aren't affected one way or another by what the behavior is), I think that the default behavior across all applications should be to select the entire word when a word including an underscore character is double-clicked.&amp;nbsp; The underscore should not be treated as a word separator character for the purposes of an application's logic that selects a word on a double-click.&lt;/p&gt;&lt;p&gt;It still might make sense for underscore characters to be treated as word separator characters in some other cases.&amp;nbsp; Such cases might include an application's spell check logic; another case might be the handling of navigating through a document a word at a time via the Ctrl+LeftArrow and Ctrl+RightArrow shortcut keys. &lt;/p&gt;&lt;p&gt;A few applications that get this behavior "right" (double-click selects an entire word with an underscore; not all other punctuation characters are specially handled this way):&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Visual Studio 2008&lt;br /&gt;
&lt;li&gt;Eclipse 3.3&lt;br /&gt;
&lt;li&gt;Notepad2 (2.1.19)&lt;br /&gt;
&lt;li&gt;Microsoft Excel (2003)&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;p&gt;A few applications that don't get the double-click behavior "right" (double-click selects only the portion of the clicked word up to the underscore character):&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Firefox 3&lt;br /&gt;
&lt;li&gt;Internet Explorer 6&lt;br /&gt;
&lt;li&gt;&lt;a href="http://www.toadsoft.com/"&gt;Toad for Oracle&lt;/a&gt; (9.0.1.8)&lt;br /&gt;
&lt;li&gt;Microsoft Word (2003)&lt;br /&gt;
&lt;li&gt;Acrobat Reader 7&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;p&gt;Developers of this latter set of applications: If you agree, please go forth and effect positive change!&amp;nbsp; :-)&amp;nbsp; Developers of new applications, please keep this issue in mind when coding up the mouse click UI behavior for your new app.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Update 4/4/2011:&lt;/b&gt; There &lt;i&gt;is&lt;/i&gt; an existing, long-standing (March 2003) Mozilla (Firefox) Bugzilla ticket for this: &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=196175"&gt;Bug 196175 - underscore should be part of word, not punctuation&lt;/a&gt;.  As discussed in that comments on that ticket, though, it isn't clear that special-case logic should be added for the underscore character, since behavior from application to application even on a single platform is inconsistent (as I noted above for Windows applications).  I voted for the ticket, but I'm not going to hold my breath at this point for it to be addressed soon!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2809562575542442724?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2809562575542442724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/07/don-treat-underscore-as-word-separator.html#comment-form' title='11 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2809562575542442724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2809562575542442724'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/07/don-treat-underscore-as-word-separator.html' title='Don&amp;#39;t treat Underscore as a word separator character on double-click'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>11</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8513360447866761955</id><published>2008-07-15T17:49:00.001-04:00</published><updated>2008-07-15T17:49:43.986-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='groupwise'/><title type='text'>Workaround: "The server is not responding" error when trying to add a contact in Groupwise Messenger</title><content type='html'>&lt;p&gt;At work, our internal corporate standard IM client is &lt;a href="http://www.novell.com/collateral/4613331/4613331.html"&gt;Groupwise Messenger&lt;/a&gt;.&amp;nbsp; Today, the "Add Contact" function stopped working for me (after always having had it work fine in the past): When trying to add a new contact, the "Search Results" window would appear with its normal animated "searching..." icon, and then after 30 seconds, the search would time out with the error message "The server is not responding."&amp;nbsp; Despite the error message, I could view the online/offline status of my existing contacts with no problem (so I clearly had a working connection to the Groupwise server).&lt;/p&gt; &lt;p&gt;After playing with the client for a couple of minutes in an attempt to find a workaround, I did find a rather unusual workaround, somewhat to my surprise:&lt;/p&gt; &lt;p&gt;On the Find dialog (where you enter the name of the contact to find), tucked away in the top-right corner of the dialog is an "Advanced" button.&amp;nbsp; Clicking that button restyles the dialog with some additional "advanced" fields.&amp;nbsp; Performing the search while the Find dialog is in this Advanced mode causes the search to work correctly, and the "The server is not responding" error does not occur.&lt;/p&gt; &lt;p&gt;This workaround seems kind of bizarre to me -- I have no idea why it works, or what the cause of the initial issue is.&amp;nbsp; Still, I have successfully reproduced this workaround as a solution for the issue multiple times (and gone back to Basic mode in the Find dialog and had the search fail once again as it did originally), so I wanted to share the solution in hopes that it is helpful to someone.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8513360447866761955?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8513360447866761955/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/07/workaround-server-is-not-responding.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8513360447866761955'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8513360447866761955'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/07/workaround-server-is-not-responding.html' title='Workaround: &amp;quot;The server is not responding&amp;quot; error when trying to add a contact in Groupwise Messenger'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3325404150887338445</id><published>2008-07-07T17:52:00.004-04:00</published><updated>2008-07-07T18:08:25.106-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>How to search multiple domains with Google</title><content type='html'>It is possible to do a &lt;a href="http://www.google.com/"&gt;Google search&lt;/a&gt; and restrict the results to a single domain by using the &lt;a href="http://www.google.com/advanced_search"&gt;Advanced Search form&lt;/a&gt;.  You can also use the regular search form with syntax like:&lt;pre&gt;&lt;i&gt;search term(s)&lt;/i&gt; site:&lt;i&gt;siteName.com&lt;/i&gt;&lt;/pre&gt; where &lt;tt&gt;&lt;i&gt;siteName.com&lt;/i&gt;&lt;/tt&gt; is the site you want to search.  Google will show you search results from just that one site.  For example: &lt;a href="http://google.com/search?q=football+site:umich.edu"&gt;Search for "football" at umich.edu&lt;/a&gt;.

As of the time of this writing, the Advanced Search form doesn't seem to support searching multiple specified domains instead of just a single one; adding a space between the domains entered on the "Search within a site or domain" field doesn't work (Google automatically removes any spaces before performing the search).  Using one of the characters &lt;tt&gt;,&lt;/tt&gt; &lt;tt&gt;;&lt;/tt&gt; &lt;tt&gt;:&lt;/tt&gt; in the field as a delimiter doesn't work, either.

However, you can do a multiple domain search by using syntax like this in the regular search form:&lt;pre&gt;&lt;i&gt;search term(s)&lt;/i&gt; site:&lt;i&gt;siteName1.com&lt;/i&gt; OR site:&lt;i&gt;siteName2.com&lt;/i&gt;&lt;/pre&gt; where &lt;tt&gt;&lt;i&gt;siteName1.com&lt;/i&gt;&lt;/tt&gt; and &lt;tt&gt;&lt;i&gt;siteName2.com&lt;/i&gt;&lt;/tt&gt; are the sites that you want to search.  For example: &lt;a href="http://www.google.com/search?q=football+site:umich.edu+OR+site:msu.edu"&gt;Search for "football" at umich.edu and msu.edu&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3325404150887338445?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3325404150887338445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/07/how-to-search-multiple-domains-with.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3325404150887338445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3325404150887338445'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/07/how-to-search-multiple-domains-with.html' title='How to search multiple domains with Google'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-2778468949240336191</id><published>2008-07-02T18:09:00.001-04:00</published><updated>2008-07-02T18:10:47.323-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows search'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>How to hide the Windows Search 4 search bar on the Windows XP Taskbar</title><content type='html'>&lt;p&gt;File this one under "so obvious that I couldn't figure it out!"&lt;/p&gt; &lt;p&gt;Earlier today, I installed the recently-released &lt;a href="http://www.microsoft.com/windows/products/winfamily/desktopsearch/default.mspx"&gt;Windows Search 4&lt;/a&gt; for Windows XP.&amp;nbsp; I'm going to give it a try not so much as a search tool, but primarily as a means of opening documents more quickly in cases when I already know where the document I want is located, but the location is multiple levels deep in my filesystem hierarchy, and it takes a few seconds to drill all the way down to it; I'm hoping just typing a few characters of the document's name and then opening the document from the search results turns out to be faster.&lt;/p&gt; &lt;p&gt;When I installed Windows Search 4, it placed a search bar on my Windows Taskbar.&amp;nbsp; I didn't really want the search bar there; I like to have maximum real estate available on the Taskbar for my open applications' buttons.&amp;nbsp; (I don't have the Quick Launch bar or any other widgets present on my Taskbar, either; I use &lt;a href="http://www.bayden.com/SlickRun/"&gt;SlickRun&lt;/a&gt; to launch apps quickly using only the keyboard.)&amp;nbsp; I'm also currently running a &lt;a href="http://www.arcware.net/archive/2006/11/30/Zune-Desktop-Theme.aspx"&gt;black Windows theme&lt;/a&gt; and a black desktop background, and the bright white rectangle of the search field was a bit of an eyesore.&lt;/p&gt; &lt;p&gt;Since I knew that I could also bring up the search field with the global Win+F keyboard shortcut (as Windows Search 4 replaces the default Windows search functionality, including the Win+F shortcut), I poked around in the Windows Search options for a way to hide the search field on the Taskbar.&amp;nbsp; Not seeing any relevant options there, I Googled for an answer, and didn't come up with anything immediately, but eventually found the answer in a reader comment in a &lt;a href="http://www.downloadsquad.com/2008/03/30/windows-search-4-0-vs-google-desktop-5-5/"&gt;downloadsquad.com article&lt;/a&gt; comparing Windows Search 4 and Google Desktop 5.5.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Commenter "Quikboy" on that article noted that it is possible to hide the Windows Search field on the Taskbar, not from within the Windows Search options, but in the same way that you can hide any other Taskbar widget: Right-click an empty portion of the Taskbar, then on the context menu that appears, open the Toolbars sub-menu, and uncheck Windows Search Deskbar.&lt;/p&gt; &lt;p&gt;So, that problem is solved!&amp;nbsp; It remains to be seen how useful Windows Search 4 turns out to be in my everyday work, but at least while I'm making that determination over the next few days, I won't have the search field cluttering up my Taskbar!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-2778468949240336191?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/2778468949240336191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/07/how-to-hide-windows-search-4-search-bar.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2778468949240336191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/2778468949240336191'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/07/how-to-hide-windows-search-4-search-bar.html' title='How to hide the Windows Search 4 search bar on the Windows XP Taskbar'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1259642566223933432</id><published>2008-06-27T17:29:00.001-04:00</published><updated>2008-06-27T17:29:48.285-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='investigation'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Fix: After undock, ThinkPad wireless connection doesn't work</title><content type='html'>&lt;p&gt;For most of the time I've had my ThinkPad T60 laptop (running Windows XP SP2) and Advanced Mini-Dock, when I would undock the laptop from the docking station, the ThinkVantage Access Connections application would automatically and successfully enable the machine's wireless radio and connect me to the local wireless network.&amp;nbsp; &lt;/p&gt; &lt;p&gt;However, following a recent (May 2008) round of system software updates installed via ThinkVantage System Update, this no longer worked.&amp;nbsp; After undocking, the wireless connection would not automatically be made, and when I tried to manually connect using ThinkVantage Access Connections, the attempt would fail on the first step of the process, "Applying wireless settings." &lt;/p&gt; &lt;p align="center"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="183" alt="TAC_Fail" src="http://jonschneider.com/images/jsblog/FixThinkPadwirelessconnectionfailsfollow_B920/TAC_Fail.gif" width="263" border="0"&gt; &lt;/p&gt; &lt;p&gt;After encountering this failure, I would be able to get the wireless to work correctly once again by rebooting the machine.&amp;nbsp; (Needless to say, I wasn't happy with this workaround, due to the delay involved in rebooting, and the need to close all open applications.)&lt;/p&gt; &lt;h4&gt;&lt;strong&gt;The Fix - Executive Summary&lt;/strong&gt;&lt;/h4&gt; &lt;p&gt;I was able to fix the issue on my machine by reverting from &lt;a href="http://www-307.ibm.com/pc/support/site.wss/MIGR-4ZLNJB.html"&gt;ThinkVantage Access Connections&lt;/a&gt; version 4.52 to &lt;a href="http://www-307.ibm.com/pc/support/site.wss/license.do?filename=mobiles/7mcn38ww.exe"&gt;version 4.42&lt;/a&gt;.&lt;/p&gt; &lt;h4&gt;&lt;strong&gt;The Fix - Long Version / Investigation&lt;/strong&gt;&lt;/h4&gt; &lt;p&gt;On one recent occasion where I undocked and subsequently encountered the issue, the ThinkVantage Access Connections service process, AcSvc.exe, crashed (with the typical Windows XP "This application has encountered a problem and needs to close" crash dialog).&amp;nbsp; I restarted the process (via the ThinkVantage Access Connections application shortcut on the Start menu), and after doing that, the wireless started working again, with no reboot involved.&amp;nbsp; This led me to believe that the issue was with the Access Connections software.&lt;/p&gt; &lt;p&gt;I reproduced the undock issue again, and this time manually killed the AcSvc.exe process (via Windows Task Manager), and restarted it, and that once again got the wireless networking to work.&amp;nbsp; So at that point I at least had a better workaround than needing to reboot.&amp;nbsp; &lt;/p&gt; &lt;p&gt;I continued to investigate the issue, and found a &lt;a href="http://forums.lenovo.com/lnv/board/message?board.id=T_Series_Thinkpads&amp;amp;message.id=9207"&gt;post&lt;/a&gt; on the &lt;a href="http://forums.lenovo.com/"&gt;Lenovo Support Forums&lt;/a&gt; indicating that another ThinkPad owner was having an apparently unrelated problem with AcSvc.exe, but that he was running Access Connections version 4.52, and that he had been able to resolve the issue by reverting to version 4.42.&amp;nbsp; I checked my ThinkVantage System Update log, and noticed that an upgrade to Access Connections 4.52 had been among the changes in the recent round of updates I had installed.&amp;nbsp; A co-worker who also had a T60 and was having no wireless issues also reported that he was running Access Connections 4.42.&amp;nbsp; Armed with all of this information, I decided to try reverting to Access Connections 4.42 to see if that would resolve the issue.&amp;nbsp; &lt;/p&gt; &lt;p&gt;I was somewhat nervous about doing this, since if the Access Connections installer didn't do a good job of handling the case of installing an older version of the software on top of a newer one, I could conceivably left in a broken state where my network connectivity (both wired and wireless) might not work at all.&amp;nbsp; To try and mitigate this risk, I backed up the registry entries and program files for Access Connection 4.52 before proceeding.&lt;/p&gt; &lt;p&gt;Fortunately, the &lt;a href="http://www-307.ibm.com/pc/support/site.wss/license.do?filename=mobiles/7mcn38ww.exe"&gt;Access Connections 4.42 installer&lt;/a&gt; had good handling for installing over a newer version: it recognized that I had a newer Access Connections version installed, and (with my approval) uninstalled the existing version before installing the 4.42 version.&lt;/p&gt; &lt;p&gt;Following a reboot, with Access Connections 4.42 installed, the laptop now once again automatically and successfully connections to the wireless network following an undock!&lt;/p&gt; &lt;p&gt;There was one remaining minor issue, though.&amp;nbsp; With Access Connections 4.42 reinstalled, I started seeing a new issue where upon an undock, I would get an error dialog with caption "netsh.exe - Unable to Locate Component", and dialog text "This application has failed to start because framedyn.dll was not found.&amp;nbsp; Re-installing the application may fix this problem."&lt;/p&gt; &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/FixThinkPadwirelessconnectionfailsfollow_B920/TAC_Undock_After_452_revert.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="118" alt="TAC_Undock_After_452_revert" src="http://jonschneider.com/images/jsblog/FixThinkPadwirelessconnectionfailsfollow_B920/TAC_Undock_After_452_revert_thumb.jpg" width="640" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Fortunately (and unlike for the original "Applying wireless settings" failure issue), help was readily available via a &lt;a href="http://www.google.com/search?q=netsh.exe+framedyn.dll+was+not+found"&gt;Google search&lt;/a&gt; for this issue.&amp;nbsp; Per a suggestion given in several of the search results, I copied the file framedyn.dll from my C:\Windows\system32\wbem folder to the C:\Windows\system32 folder; with this done, the error dialog now no longer appears.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1259642566223933432?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1259642566223933432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/06/fix-after-undock-thinkpad-wireless.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1259642566223933432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1259642566223933432'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/06/fix-after-undock-thinkpad-wireless.html' title='Fix: After undock, ThinkPad wireless connection doesn&amp;#39;t work'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-326353470247294140</id><published>2008-06-12T17:17:00.001-04:00</published><updated>2008-06-12T17:17:42.567-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><title type='text'>Fix: Altered Logitech mouse behavior in some apps</title><content type='html'>&lt;p&gt;In a previous post on an issue with &lt;a href="http://blog.jonschneider.com/2008/02/workaround-mouse-sensitivity-settings.html"&gt;Logitech mouse sensitivity settings&lt;/a&gt;, I noted that I had an unresolved issue on my Windows XP machine, where the speed and acceleration settings for my Logitech MX500 mouse getting lost while Microsoft Virtual PC Console was the foreground (active) application.&amp;nbsp; (The sensitivity of the mouse would suddenly increase quite a bit, causing a corresponding increase in the speed of the mouse cursor.)&amp;nbsp; Since then, I've noticed the same issue occurring in a couple of other applications as well, including the JMS queue browser &lt;a href="http://www.hermesjms.com/"&gt;HermesJMS&lt;/a&gt;, and the &lt;a href="http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-53167"&gt;ThinkVantage Active Protection&lt;/a&gt; Windows Control Panel applet.&lt;/p&gt; &lt;p&gt;Today, I figured out the fix: In the Control Panel, in the Mouse applet, on the Motion tab, uncheck the "Disable acceleration in games" checkbox, then click OK.&lt;/p&gt; &lt;p&gt;Apparently the issue is caused by the Logitech software erroneously identifying the affected applications as games, and disabling the custom mouse speed/sensitivity and acceleration settings while those applications are active.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-326353470247294140?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/326353470247294140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/06/fix-altered-logitech-mouse-behavior-in.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/326353470247294140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/326353470247294140'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/06/fix-altered-logitech-mouse-behavior-in.html' title='Fix: Altered Logitech mouse behavior in some apps'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8355866113941453438</id><published>2008-06-10T17:31:00.001-04:00</published><updated>2008-06-10T17:33:33.942-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>The "red squiggle" and user-entered filesystem paths</title><content type='html'>&lt;p&gt;Wouldn't it be nice if the "red squiggle" that appears under misspelled user-typed words in many applications these days (such as Microsoft Word and Firefox 2) would also appear under mistyped portions of a filesystem path in "Open File" dialogs and other places where the user can manually type in a path, such as the Start | Run dialog, and the address bar of a Windows Explorer window?&lt;/p&gt; &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="416" alt="FileOpenRedSquiggleDim" src="http://jonschneider.com/images/jsblog/Theredsquiggleanduserenteredfilesystempa_F661/FileOpenRedSquiggleDim.png" width="563" border="0"&gt; &lt;/p&gt; &lt;p&gt;Look closely at the highlighted section in the above Open dialog.&amp;nbsp; The last word in the path name entered by the user, "mircosoft," is a nonexistent file/directory name, and so a "red squiggle" appears under that portion of the entered path.&lt;/p&gt; &lt;p&gt;The image above is just a mockup; Windows XP doesn't actually do this.&amp;nbsp; Are there any current operating systems out there that do?&lt;/p&gt; &lt;p&gt;This would be a nice additional UI cue to the user that they have misspelled or mistyped something.&amp;nbsp; Currently, the only such cue in Windows XP that the user gets is that intellisense suggestions (suggested path/file names) stop showing up under the input field.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8355866113941453438?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8355866113941453438/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/06/squiggle-and-user-entered-filesystem.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8355866113941453438'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8355866113941453438'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/06/squiggle-and-user-entered-filesystem.html' title='The &amp;quot;red squiggle&amp;quot; and user-entered filesystem paths'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-141076552059055417</id><published>2008-05-30T17:33:00.002-04:00</published><updated>2008-05-30T17:35:04.679-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows media player'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Control Windows Media Player with the ThinkPad Play/Pause Keys</title><content type='html'>&lt;p&gt;Quick tip for ThinkPad owners: the media control keyboard keys located on the arrow keys at the bottom-right corner of the keyboard can be used to control music or other media playing in Windows Media Player (WMP) &lt;em&gt;even when WMP isn't the foreground application!&lt;/em&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://jonschneider.com/images/jsblog/ControlWindowsMediaPlayerwiththeThinkPad_F6F3/ThinkpadMediaKeys.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="162" alt="ThinkpadMediaKeys" src="http://jonschneider.com/images/jsblog/ControlWindowsMediaPlayerwiththeThinkPad_F6F3/ThinkpadMediaKeys_thumb.jpg" width="212" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;To use these keys, hold down the blue "Fn" key at the bottom-left corner of the keyboard, and press the appropriate arrow key.&lt;/p&gt; &lt;p&gt;With these keys, I can have music playing in Windows Media Player in the background (or in a minimized window), and be working in other applications in the foreground.&amp;nbsp; Then, when I get interrupted and want to pause my music (when the phone rings, or when a visitor arrives at my desk), instead of having to open the WMP window and click on the Pause button, I can just quickly push Fn + Play/Pause (the down arrow key), and my music is paused.&amp;nbsp; Another press of Fn + Play/Pause, and my music starts playing again.&amp;nbsp; Quite handy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-141076552059055417?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/141076552059055417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/05/control-windows-media-player-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/141076552059055417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/141076552059055417'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/05/control-windows-media-player-with.html' title='Control Windows Media Player with the ThinkPad Play/Pause Keys'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3627611857006206945</id><published>2008-05-07T17:56:00.002-04:00</published><updated>2008-05-07T17:59:20.293-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Tip: Expand your Windows Taskbar</title><content type='html'>&lt;p&gt;A quick tip to make your &lt;a href="http://en.wikipedia.org/wiki/Taskbar"&gt;Windows Taskbar&lt;/a&gt; a lot more usable is to expand its area and make it two rows high instead of one.&amp;nbsp; A pair of pictures are worth 2000 words:&lt;/p&gt; &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/TaskbarSingleRow.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="15" alt="TaskbarSingleRow_700" src="http://jonschneider.com/images/jsblog/TipExpandyourWindowsTaskbar_F9BF/TaskbarSingleRow_700.jpg" width="700" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/TaskbarDoubleRow.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="30" alt="TaskbarDoubleRow_700" src="http://jonschneider.com/images/jsblog/TipExpandyourWindowsTaskbar_F9BF/TaskbarDoubleRow_700_thumb.jpg" width="700" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;These two images show the same Windows XP Taskbar with 12 applications running, and a bunch of icons in the &lt;a href="http://blogs.msdn.com/oldnewthing/archive/2003/09/10/54831.aspx"&gt;system tray&lt;/a&gt;.&amp;nbsp; The difference is that in the second image, the Taskbar has been expanded to be two rows high instead of just one.&lt;/p&gt; &lt;p&gt;With the increased area available on the Taskbar, it's much easier to read the text that accompanies the icon on each application button, making it a lot easier to find (for example) a specific Firefox window or Word document.&lt;/p&gt; &lt;p&gt;To increase the number of rows in the Taskbar in this manner, just use the mouse to drag the top edge of the Taskbar upwards.&amp;nbsp; (You'll need to temporarily unlock the Taskbar first if you have it locked: Right-click an empty portion of the Taskbar, and uncheck the "Lock the Taskbar" option from the context menu that appears.)&lt;/p&gt; &lt;p&gt;Increasing the Taskbar area to two rows has a few other benefits as well:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;The system tray icons are grouped into &lt;em&gt;three&lt;/em&gt; rows instead of just one, saving a lot of horizontal real estate on the Taskbar.&amp;nbsp; As a result, there's even more room available for application buttons to be shown.&lt;/li&gt; &lt;li&gt;Windows shows the day and date in addition to the time on the right edge of the Taskbar; no need to hover over the time display with the mouse to see that information anymore.&lt;/li&gt; &lt;li&gt;Although it isn't shown in the screen cap above, I've found that the bit of empty space below the Start button is a great place to tuck a &lt;a href="http://www.bayden.com/SlickRun/"&gt;SlickRun&lt;/a&gt; command line into.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;With the large screen resolutions (and hopefully, &lt;a href="http://www.codinghorror.com/blog/archives/001076.html"&gt;multiple monitors&lt;/a&gt;) available on modern machines, the additional screen real estate consumed by increasing the Taskbar size to a second row is trivial compared to the usability and productivity gains realized by doing so.&lt;/p&gt; &lt;p&gt;(You might also note that I have the "Group Similar Icons" option from the Taskbar's Properties dialog turned off.&amp;nbsp; That option does save some Taskbar real estate, but at the significant cost of not being able to identify or access specific application windows from the Taskbar with a single-click.&amp;nbsp; Again, with the large amount of screen real estate available on modern systems, I don't see the benefit in ever having that option enabled.)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3627611857006206945?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3627611857006206945/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/05/tip-expand-your-windows-taskbar.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3627611857006206945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3627611857006206945'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/05/tip-expand-your-windows-taskbar.html' title='Tip: Expand your Windows Taskbar'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-8217725429333879062</id><published>2008-04-22T23:31:00.003-04:00</published><updated>2008-04-22T23:42:25.548-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='live writer'/><title type='text'>Fix: Windows Live Writer install: "Sorry, we couldn’t install this program"</title><content type='html'>&lt;p&gt;I ran into an issue while trying to install &lt;a href="http://get.live.com/writer/overview"&gt;Windows Live Writer&lt;/a&gt;, a blog-posting package, at work earlier this week.&amp;nbsp; The installer would work for a few minutes, and then fail with the rather uninformative error "Sorry, we couldn't install this program", and offer to put a shortcut to the installer on the desktop for me to "try again later."&amp;nbsp; I did "try again later" a couple of times, but the install kept failing in the same manner.&lt;/p&gt;  &lt;p&gt;Tonight, I brought my laptop home, and tried the install again, and it worked just fine.&amp;nbsp; I suspect the difference is that here at home, I'm not behind a proxy server.&amp;nbsp; Why the Live Writer installer didn't pick up my proxy settings at work from IE and contact whomever it wanted to contact using those, I'm not sure.&amp;nbsp; For anyone getting this error who is behind a proxy server, though, I would suggest trying the install again from an alternative location that is not behind a proxy server, if you are able to.&lt;/p&gt; &lt;p&gt;&lt;a href="http://jonschneider.com/images/jsblog/FixWindowsLiveWriterinstallSorrywecouldn_14B9E/WindowsLiveWriter.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="108" alt="WindowsLiveWriter" src="http://jonschneider.com/images/jsblog/FixWindowsLiveWriterinstallSorrywecouldn_14B9E/WindowsLiveWriter_thumb.png" width="561" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;This post is also doubling as a test post, written and published via Live Writer!&amp;nbsp; Thanks to &lt;a href="http://www.hanselman.com/blog/"&gt;Scott Hanselman&lt;/a&gt; for the recommendation (in &lt;a href="http://www.hanselman.com/blog/TheWeeklySourceCode24ExtensibilityEditionPlugInsProvidersAttributesAddInsAndModulesInNET.aspx"&gt;this post&lt;/a&gt;).&amp;nbsp; This does seem like a very nice tool so far.&amp;nbsp; It appears to support uploading images to a customizable FTP destination separate from your blog host -- hence my image test above -- and if this works out, it will likely replace the custom FTP image resizer/uploader app that I wrote for my wife that she uses when she blogs!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-8217725429333879062?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/8217725429333879062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/04/fix-windows-live-writer-install-we.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8217725429333879062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/8217725429333879062'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/04/fix-windows-live-writer-install-we.html' title='Fix: Windows Live Writer install: &amp;quot;Sorry, we couldn’t install this program&amp;quot;'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7563901905387829666</id><published>2008-04-22T16:54:00.003-04:00</published><updated>2009-07-01T23:13:57.295-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='bluetooth'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Fix: "Bluetooth device not found" on Thinkpad T60</title><content type='html'>I recently picked up a Bluetooth-enabled camera phone, and so I became interested for the first time in getting the Bluetooth functionality on my work laptop (a Thinkpad T60 running Windows XP) working to allow me to easily download pictures from the phone.
&lt;p&gt;
However, when I launched the Bluetooth Configuration applet from the Control Panel, it would hang for 5 or 10 seconds, and then show an error: "Bluetooth device not found.  Please verify that your Bluetooth device is properly connected and turned on."  In the Device Manager, under "Bluetooth Devices", only "Bluetooth Bus Enumerator" was listed, but no other specific Bluetooth device.
&lt;p&gt;
At this point, I was wondering if I didn't actually have Bluetooth hardware installed (despite the presence of a Bluetooth usage indicator icon on the machine); when I first got this machine, the internal wireless card wasn't yet installed, and I needed to take the machine down to the IT department to have them pop it in.  However, one of the IT folks I talked to confirmed that the Bluetooth capability should be present in the existing wireless card.
&lt;p&gt;
The solution turned out to be that Bluetooth was disabled in the BIOS.  In the BIOS, in the Network section, there is a setting named Internal Bluetooth Device; the value was set to "Hidden."  I changed this to "Enabled," saved, and rebooted, and now the Bluetooth card does show up properly in Device Manager and in the Bluetooth Configuration applet.  
&lt;p&gt;
So, I can now successfully pull photos directly off my camera phone to my PC, without having to individually email them to myself from the phone as picture messages (and pay my wireless provider for the privilege)!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7563901905387829666?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7563901905387829666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/04/fix-bluetooth-device-not-found-on.html#comment-form' title='17 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7563901905387829666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7563901905387829666'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/04/fix-bluetooth-device-not-found-on.html' title='Fix: &quot;Bluetooth device not found&quot; on Thinkpad T60'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>17</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1793546495312416027</id><published>2008-04-11T19:47:00.014-04:00</published><updated>2009-07-01T23:15:30.447-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='culture'/><category scheme='http://www.blogger.com/atom/ns#' term='recruiting'/><category scheme='http://www.blogger.com/atom/ns#' term='management'/><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><title type='text'>Software Developers' $300 Discretionary Productivity Budget</title><content type='html'>Currently, there is a state of affairs at many companies that employ or software programmers or developers is that if a developer wants or needs something to improve their personal productivity -– for example, a new piece of hardware such as a 2nd monitor, or a book on a new software development methodology –- that need is essentially treated as "non-standard" or "out of the ordinary", and requires special approval from a manager. 
&lt;p&gt;
After reading &lt;a href="http://www.codinghorror.com/blog/"&gt;Jeff Atwood's&lt;/a&gt; recent blog post &lt;a href="http://www.codinghorror.com/blog/archives/001097.html"&gt;We Don't Use Software That Costs Money Here&lt;/a&gt;, I got to thinking: Wouldn't it be nice if every developer had a small discretionary budget from their employer of, say, U.S. $300 to go out and buy themselves things they want or need to help do their job better?  The developer could just order themselves what they need -- no special approval required -- and then expense it to the company, up to that annual $300 limit. 

&lt;h4&gt;What would the discretionary budget cover?&lt;/h4&gt;
Some things that a developer could use the budget to purchase:
&lt;ul&gt;&lt;li&gt;Hardware:
&lt;ul&gt;&lt;li&gt;An &lt;a href="http://www.codinghorror.com/blog/archives/001076.html"&gt;additional monitor&lt;/a&gt; - around US $150-350
&lt;/li&gt;&lt;li&gt;A video card or laptop dock to run the additional monitor, if needed - $50-150
&lt;/li&gt;&lt;li&gt;A custom mouse or keyboard - $30-80
&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Software development-related books/manuals - $30-60
&lt;/li&gt;&lt;li&gt;Non-free software tools - $5+
&lt;/li&gt;&lt;li&gt;Non-free development-related magazine subscriptions - $10-40
&lt;/li&gt;&lt;li&gt;Possibly, even "non-technical" things like a desk lamp or a nicer chair
&lt;/li&gt;&lt;/ul&gt;Things the budget would &lt;i&gt;not&lt;/i&gt; be intended to cover:
&lt;ul&gt;&lt;li&gt;The obligatory development machine upgrade every 3/4/5 years that developers generally need to be able to keep up with modern software.
&lt;/li&gt;&lt;li&gt;Major software packages that developers require to do their jobs, such as a copy of Visual Studio for developers working in a C# shop.
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt;Why $300?&lt;/h4&gt;
&lt;p&gt;
I picked $300 because it's enough to buy a modest amount of items that can make a real productivity impact; say, a decent $200 monitor and a couple of $50 books on development methodology.  If a developer needs to spend beyond the $300 limit – say, to buy one more book, or to do something more expensive like attend a conference – they could just get special permission from their manager (as would otherwise be the status quo for any request, without the discretionary budget).
&lt;p&gt;
A budget amount of much more than $300 – say, $3000 – could be problematic because developers at some point would likely feel like they would rather have some of those budgeted funds go directly to their salary.  $300, spread over an entire year, is an amount that is probably low enough for most developers not to feel annoyed that they are losing potential compensation.

&lt;h4&gt;Benefits&lt;/h4&gt;
&lt;p&gt;
What are the reasons that an employer of software developers might want to set up a discretionary "productivity budget" for their developers?
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Productivity.&lt;/b&gt; Developers can use the budget to increase their own productivity, which directly translates to a productivity gain for their development team, and in turn, for their employer.
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Morale.&lt;/b&gt;  Existing developers are happy because they can (within limits) just order themselves what they need, instead of needing to worry about getting approval from a manager, or that they might be "overstepping their bounds" by making a special request.
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Recruiting.&lt;/b&gt; Recruiting is benefited, as the discretionary budget can be presented as a differentiator to prospective hires.  Prospective new employees could see the budget as a sign that the company is in tune with developer's concerns, and that the company's developers are empowered to make their own development-related decisions (rather than having such decisions be made by potentially non-technical management staff).
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt;Costs&lt;/h4&gt;
&lt;p&gt;
Why might an employer of software developers &lt;i&gt;not&lt;/i&gt; want to implement this policy?
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Budget.&lt;/b&gt;  If a development manager implements the $300 discretionary budget policy for his team, and there are 10 developers on the team, that's an annual cost of $3000 that needs to come from somewhere.  Taken on its own, that figure might initially seem like a somewhat large amount for the manager to approach upper management and request.  However, I would argue that the multiple real benefits provided by the discretionary budget (as outlined above) outweigh the relatively insignificant additional cost of the budget as compared to the (most typically) six figures already being spent on the developers' salary and benefit packages.
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Perception of lost salary.&lt;/b&gt;  As noted earlier, the potential exists for some developers to be annoyed that the $300 is money that could be going towards an increase in their base salary.  However, I think the potential for negative impact stemming from this perception is limited – I suspect there aren't too many developers today who are annoyed that they have such a nice development machine to work with, because their employer could have bought them a weaker machine, and passed the $150 saved along to them!
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt;Who owns property purchased with the budget?&lt;/h4&gt;
&lt;p&gt;
If a developer buys a monitor or a book with the money from their discretionary budget, who does that item belong to?  Who owns the item? 
&lt;p&gt;
&lt;b&gt;The Developer.&lt;/b&gt; The developer owning such purchased items, no strings attached, probably isn't a good policy.  There would be nothing to stop a developer from buying a new video card and taking it home to exclusively use for playing computer games.  The employer wouldn't see any real benefit in that case, and the development budget might as well just be rolled into the developer's salary.
&lt;p&gt;
&lt;b&gt;The Company.&lt;/b&gt; A policy of the employer owning purchased items is a possibility.  If the developer leaves the company, the company would retain possession of any items purchased.  There could be situations where developers might purchase specialized items, though, which the company wouldn't have any real interest in retaining, such as a &lt;a href="http://answers.google.com/answers/threadview?id=283534"&gt;left-handed trackball&lt;/a&gt; (in the case that there are no other trackball-favoring lefties on the team).
&lt;p&gt;
&lt;b&gt;The Developer – with a caveat.&lt;/b&gt; An employee-friendly approach that blends these ideas would be to allow the developer to have ownership of purchased items, but stipulate that the items are for use at the office only.  This would give the company all of the benefits of the developer gaining productivity through use of their purchases; and in the event that the developer leaves, the company wouldn't be out a significant amount of money.  This would also mitigate any perception by developers that the discretionary budget funds are coming out of their salary.
&lt;p&gt;
Whatever ownership policy is chosen, there are cases where exceptions to the general policy would be reasonable; for example, the company might allow developers to purchase a development-related magazine and have it delivered to the developer's home address (rather than to the office), to allow the developer to read the magazine at home in their spare time. 

&lt;h4&gt;What happens to leftover funds at year's end?&lt;/h4&gt;
&lt;p&gt;
My suggestion would be that funds left over at the end of the year would not be carried over to the next year; time-limiting the budgeted funds in this manner would encourage developers to use the funds to improve their productivity (per the budget's intention), rather than "hoarding" budget dollars, or alternatively, just ignoring the budget.
&lt;p&gt;
One potential issue with this approach is that some developers might, at the end of the year, spend their budget on frivolous purchases, just so their funds aren't "lost."  One possible way to deal with this might be to give developers a cash award equal to something like 20% of their leftover budget funds.  A developer with $100 left over at the end of the year might then be encouraged to not spend their money, to get the extra $20 in their paycheck; but the 20% is a low enough amount that developers probably wouldn't be very motivated to purposely refrain from spending any of their $300 budget throughout the year, with the intent of earning a mere extra $60 at year's end.

&lt;h4&gt;A realistic implementation of an existing concept&lt;/h4&gt;
&lt;p&gt;
Certainly, the idea that developers should be given significant latitude to obtain whatever equipment they feel they need to do their jobs, and to have other exceptional on-the-job benefits isn't a new one; good articles on this topic include Joel Spolsky's &lt;a href="http://www.joelonsoftware.com/articles/FieldGuidetoDevelopers.html"&gt;A Field Guide to Developers&lt;/a&gt; and Jeff Atwood's &lt;a href="http://www.codinghorror.com/blog/archives/000666.html"&gt;Programmer's Bill of Rights&lt;/a&gt;.  However, I have observed that companies which aren't among the group of a relatively few "elite" development-centric companies along the lines of Google, Microsoft, Joel's &lt;a href="http://www.fogcreek.com/"&gt;Fog Creek&lt;/a&gt;, or Jeff's (&lt;a href="http://www.codinghorror.com/blog/archives/001074.html"&gt;until just recently&lt;/a&gt;) &lt;a href="http://www.vertigo.com/"&gt;Vertigo&lt;/a&gt; would (and actively do) simply balk at the prospect of the required expenditure and (perceived, at least) questionable &lt;acronym title="return on investment"&gt;ROI&lt;/acronym&gt; of implementing Joel's and Jeff's suggestions. 
&lt;p&gt;
On the other hand, a basic $300-per-developer budget at outlined in this article might be more palatable, and thus realistically more likely to be implemented, at the mainstream of companies that employ developers -- both software-industry companies, and companies in other industries that have developers on staff to develop internal applications.

&lt;h4&gt;Action Items&lt;/h4&gt;
&lt;p&gt;
Developers, feel free to present the developer's discretionary budget as described in this article to your manager, and see if you can't get a productivity-enhancing discretionary budget approved for the developers on your team. 
&lt;p&gt;
If anyone does get such a budget implemented at their workplace after reading this article, please do let me know.  I would be happy to hear about it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1793546495312416027?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1793546495312416027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/04/software-developers-discretionary.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1793546495312416027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1793546495312416027'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/04/software-developers-discretionary.html' title='Software Developers&apos; $300 Discretionary Productivity Budget'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-5323657980740040454</id><published>2008-04-09T17:17:00.004-04:00</published><updated>2009-07-01T23:16:06.106-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Rescuing an off-screen window</title><content type='html'>On Windows, it is possible to get into a situation where one or more application windows are positioned entirely outside of the bounds of the viewable area of the monitor.  This can sometimes happen with a machine in a multi-monitor setup where one of the monitors is disconnected; an application window that is in the minimized state at the time that a monitor is unplugged can, when the window is restored (un-minimized), be restored to a position somewhere off the screen, in what was the viewable area of the disconnected monitor.
&lt;p&gt;
Here's one way to "rescue" such an off-screen window and bring it back onto the active monitor:
&lt;ol&gt;
&lt;li&gt;Make the off-screen window the active window by clicking on its icon in the Windows Taskbar.
&lt;li&gt;Press Alt+Space, and then press the M key.  This will activate the window's &lt;a href="http://en.wikipedia.org/wiki/Common_menus_in_Microsoft_Windows"&gt;system menu&lt;/a&gt;, and put the window into "move mode."
&lt;li&gt;Press and hold the arrow key on the keyboard of the direction that the window needs to be moved to bring it back onto the screen.  (For example, if the window is positioned past the right edge of the visible area of the screen, press and hold the left arrow key.  If you're not sure where the window is located relative to the screen, click the window's taskbar icon twice to minimize and then re-restore the window; you should see the window's icon move to and from the taskbar from its off-screen location.)  Continue holding the arrow key until you see the edge of the window moving back onto the screen.
&lt;li&gt;Once you can see any portion of the window on the screen, move the mouse cursor a short distance in any direction.  This will "snap" the window the rest of the way onto the screen.
&lt;li&gt;Left-click once with the mouse (anywhere) to exit "move mode."
&lt;/ol&gt;
&lt;p&gt;
That's it!  I've tested these steps on Windows XP; I haven't had a chance yet to try them out on Vista.  I hope this helps!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-5323657980740040454?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/5323657980740040454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/04/rescuing-off-screen-window.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5323657980740040454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/5323657980740040454'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/04/rescuing-off-screen-window.html' title='Rescuing an off-screen window'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-48265283704453319</id><published>2008-03-26T12:57:00.003-04:00</published><updated>2009-07-01T23:16:38.075-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='zip'/><title type='text'>Tip: Creating a .zip file of a subdirectory tree in Windows Explorer</title><content type='html'>You can quickly and easily create a .zip file containing the files and subfolders in a particular subdirectory tree in Windows XP by right-clicking the root folder of the subdirectory tree to be compressed in Explorer, and then selecting Send To | Compressed (zipped) Folder from the context menu that appears.
&lt;p&gt;
&lt;img src="http://jonschneider.com/images/jsblog/SendToCompressedFolder.jpg" alt="Windows Explorer: Send To | Compressed Folder"&gt;
&lt;p&gt;
Doing this causes Explorer to create a .zip file with the contents of the subdirectory tree (with the same name as the name of the tree's root folder, plus a ".zip" extension), located in the same folder as the subdirectory tree's root folder.  The files in the created .zip archive retain their full path information (so that the folder structure of the subdirectory tree will be retained when the archive is later uncompressed).
&lt;p&gt;
This technique is handy for doing things like compressing the subdirectory tree of a small development project's source code, in order to easily send the code (in the form of the created .zip file) to another machine.  The technique is also nice because it doesn't require the use of any 3rd-party tools.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-48265283704453319?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/48265283704453319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/03/tip-creating-zip-file-of-subdirectory.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/48265283704453319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/48265283704453319'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/03/tip-creating-zip-file-of-subdirectory.html' title='Tip: Creating a .zip file of a subdirectory tree in Windows Explorer'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7767185836208051187</id><published>2008-03-17T21:08:00.004-04:00</published><updated>2009-07-01T23:17:20.120-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Utility of the day: Dropper</title><content type='html'>Have you ever wanted to know the specific color of something shown on your computer screen?  &lt;a href="http://users.csc.calpoly.edu/~bfriesen/software/dropper.shtml"&gt;Dropper&lt;/a&gt; by Brian Friesen is a lightweight Windows utility that will let you do just that.  It will show you the color of any pixel on your screen, regardless of which running application the pixel is located in. 

&lt;div style="text-align:center"&gt;&lt;img src="http://jonschneider.com/images/jsblog/dropper.png"&gt;&lt;/div&gt;
&lt;p&gt;
One limitation of Dropper is that it is an older application ("older" in this case meaning 2006!), and doesn't have multi-monitor support; it can only show the color of pixels in the primary monitor on multi-monitor systems.
&lt;p&gt;
You can download Dropper from its &lt;a href="http://users.csc.calpoly.edu/~bfriesen/software/dropper.shtml"&gt;page on Brian's website&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7767185836208051187?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7767185836208051187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/03/utility-of-day-dropper.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7767185836208051187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7767185836208051187'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/03/utility-of-day-dropper.html' title='Utility of the day: Dropper'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1316584292014778873</id><published>2008-03-11T17:15:00.004-04:00</published><updated>2009-07-01T23:17:45.804-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clipboard'/><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Utility of the day: Ditto</title><content type='html'>In most of today's major operating systems, the built-in clipboard has a significant limitation: it can hold only a single item a time.  If you cut or copy a second item onto the clipboard, the first item is gone, with no direct way to recover it.  Jeff Atwood &lt;a href="http://www.codinghorror.com/blog/archives/001041.html"&gt;posted about this issue recently&lt;/a&gt; in more depth on his excellent &lt;a href="http://www.codinghorror.com/"&gt;Coding Horror&lt;/a&gt; blog.
&lt;p&gt;
From the comments on Jeff's post, I learned about an excellent Windows utility that addresses this problem: &lt;a href="http://ditto-cp.sourceforge.net/"&gt;Ditto&lt;/a&gt;.  Ditto allows you to use a configurable system-wide hotkey (I'm currently using Ctrl+Alt+v) which brings up a "history browser" with all items that had been recently copied to the clipboard.  Ditto automatically takes care of saving clipboard items, so that older items are no longer lost when a new item is copied to the clipboard.
&lt;p&gt;
Since installing Ditto on my machine, I've found myself using it more and more.  In addition to being able to easily paste items that I know that I had on the clipboard recently, avoiding having to re-copy or retype them, Ditto enables me to in some cases plan ahead and do things more efficiently.  For example, say that I have a large text document open, and I want to copy two nearby (but not adjacent) snippets of text from a location near the beginning of the document, and paste each of them to a location near the end of the document.  With just basic operating system clipboard functionality, I'd need to:
&lt;ul&gt;&lt;li&gt;Copy item 1;
&lt;li&gt;Scroll to the end of the document;
&lt;li&gt;Paste item 1;
&lt;li&gt;Scroll back to the beginning of the document;
&lt;li&gt;Copy item 2;
&lt;li&gt;Scroll back to the end of the document;
&lt;li&gt;Paste item 2.&lt;/ul&gt;
With Ditto, I can achieve the same end result more quickly:
&lt;ul&gt;&lt;li&gt;Copy item 1;
&lt;li&gt;Copy item 2;
&lt;li&gt;Scroll to the end of the document;
&lt;li&gt;Paste item 2;
&lt;li&gt;(Using Ditto) Paste item 1.&lt;/ul&gt;
Ditto is written in C++, and is free and open-source.  You can download it from the &lt;a href="http://ditto-cp.sourceforge.net/"&gt;Ditto Homepage&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1316584292014778873?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1316584292014778873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/03/utility-of-day-ditto.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1316584292014778873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1316584292014778873'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/03/utility-of-day-ditto.html' title='Utility of the day: Ditto'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4625180829636149164</id><published>2008-03-06T17:12:00.006-05:00</published><updated>2009-07-01T23:18:12.410-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='hp-ux'/><title type='text'>Leading/Trailing space characters in filenames</title><content type='html'>&lt;p&gt;&lt;b&gt;&lt;i&gt;Did you know?&lt;/i&gt;&lt;/b&gt; On Windows, it's legal for filenames to have leading space characters!  I've developed on Windows for years, but didn't realize this until just recently.  For example, at a command prompt, in a directory that contains a file named &lt;tt&gt;t.txt&lt;/tt&gt;, the following works:
&lt;pre&gt;
C:\temp&gt; copy t.txt " t.txt"
        1 file(s) copied.
&lt;/pre&gt;
This results in a directory listing like:
&lt;pre&gt;
 Directory of C:\TEMP\spaceTest

03/06/2008  05:29 PM    &amp;lt;DIR&amp;gt;          .
03/06/2008  05:29 PM    &amp;lt;DIR&amp;gt;          ..
03/06/2008  05:29 PM                 4  t.txt
03/06/2008  05:29 PM                 4 t.txt
               2 File(s)              8 bytes
&lt;/pre&gt;
What about Linux/Unix?  I tested briefly using a couple of servers running HP-UX and RedHat Linux at the office, and found that both Linux and Unix (at least the flavors that I tested) support both leading &lt;i&gt;and&lt;/i&gt; trailing spaces in filenames!  For example, at a shell prompt, in a folder that initially contains just the file &lt;tt&gt;t.txt&lt;/tt&gt;:
&lt;pre&gt;
$ ls -Q
"t.txt"
$ cp t.txt " t.txt"
$ cp t.txt "t.txt "
$ cp t.txt " t.txt "
$ ls -Q
" t.txt"  " t.txt "  "t.txt"  "t.txt "
$
&lt;/pre&gt;
&lt;p&gt;
(The &lt;tt&gt;-Q&lt;/tt&gt; flag on &lt;tt&gt;ls&lt;/tt&gt; as used in the example above causes filenames in the listing to be displayed enclosed in doublequotes, which was useful for showing that the filenames do indeed include space characters.  The &lt;tt&gt;-Q&lt;/tt&gt; flag is supported on the copy of &lt;tt&gt;ls&lt;/tt&gt; on the RedHat Linux server I'm testing on here, but not on the HP-UX server.)
&lt;p&gt;
The fact that filenames can contain leading (and, on Linux/Unix, trailing) space characters seems like a good thing for developers to be aware of.  Use caution when writing code that trims leading and trailing whitespace from a string that represents a filename!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4625180829636149164?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4625180829636149164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/03/leadingtrailing-space-characters-in.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4625180829636149164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4625180829636149164'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/03/leadingtrailing-space-characters-in.html' title='Leading/Trailing space characters in filenames'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3264701470873052756</id><published>2008-03-04T13:17:00.002-05:00</published><updated>2009-07-01T23:18:28.837-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Workaround: Thinkpad gets into "always scroll down" state</title><content type='html'>&lt;p&gt;Two or three times over the past six months or so of daily usage of my Lenovo (IBM) Thinkpad T60 laptop, I've encountered an issue where the system seems to get stuck in a "always scrolling down" state: in the active/foreground application, if the application has a vertical scroll bar, the document automatically scrolls to the bottom, even though I'm not touching the mouse wheel or otherwise doing anything that would cause the document to scroll.  If I manually scroll the document up by dragging the vertical scrollbar up with the mouse, the document scrolls back down again as soon as I release the mouse button to drop the scrollbar.  
&lt;p&gt;
The issue has always seemed to occur when I'm sitting at my desk at work and the Thinkpad is in its docking station, and I'm working with the external USB mouse.  The operating system I'm running is Windows XP Pro SP2.   
&lt;p&gt;
The workaround/solution for this issue that I've found is to just press the middle trackpoint button on the laptop once.  This is the button located between the left and right mouse buttons, just below the spacebar and just above the touch pad.
&lt;img src="http://jonschneider.com/images/jsblog/ThinkpadTrackpointCenterButton.png" alt="Thinkpad Trackpoint center button"&gt;
&lt;p&gt;
I'm not very happy that I don't know what exactly causes my system to get into this "always scrolling down state", or why clicking the center trackpoint button gets the system out of this state, but having this workaround is a lot better than nothing!
&lt;p&gt;
I hope this is helpful to anyone arriving at this post from a search engine query who may be experiencing a similar issue!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3264701470873052756?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3264701470873052756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/03/workaround-thinkpad-gets-into-always.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3264701470873052756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3264701470873052756'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/03/workaround-thinkpad-gets-into-always.html' title='Workaround: Thinkpad gets into &quot;always scroll down&quot; state'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-7111638855652545114</id><published>2008-02-24T21:10:00.004-05:00</published><updated>2009-07-01T23:18:44.641-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Utility of the day: ClipPath</title><content type='html'>&lt;p&gt;&lt;a href="http://personal.vsnl.com/sureshms/utilities.html"&gt;ClipPath&lt;/a&gt; is a shell extension for Windows which adds an option to the right-click menu for files and folders to copy the location (fullly specified path and filename) of the file to the clipboard.  It's a handy timesaver in lots of situations.  
&lt;p&gt;
For example, after saving a file such as a Word document to some deeply-nester folder, you might want to attach that file to an email message.  Normally, to do this, in your email program, after activating the "attach file" function, you'd then have to browse through the filesystem to the location to which you'd just saved the file. 
&lt;p&gt;
With ClipPath, after saving the document, you can just bring up an Explorer window with the location of the saved file (by doing a File | Save As from the application where you were editing the document), right-click the saved file, and copy the file's location to the clipboard with the ClipPath option on the right-click menu.  Then, cancel out of the Save As dialog, and in your email program, activate the "attach file" function, and just paste the full path to the file in the Open File dialog (instead of having to manually browse through the filesystem to the file's location).
&lt;p&gt;
I've been using ClipPath for well over a year now, and I've never had a problem with it.  You can download ClipPath from the &lt;a href="http://personal.vsnl.com/sureshms/utilities.html"&gt;Essential Developer Resources&lt;/a&gt; page of the website of the utility's author, &lt;a href="http://personal.vsnl.com/sureshms/"&gt;sureshms&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-7111638855652545114?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/7111638855652545114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/02/utility-of-day-clippath.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7111638855652545114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/7111638855652545114'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/02/utility-of-day-clippath.html' title='Utility of the day: ClipPath'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-3876415084942978411</id><published>2008-02-22T22:13:00.004-05:00</published><updated>2008-02-22T22:32:08.779-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='debugging'/><title type='text'>Java: Getting a String with the current call stack</title><content type='html'>Occasionally, in debugging, it can be useful to get the current call stack trace of a program as a String.  Here's a simple Java method that will do this:
&lt;pre&gt;
private static String getCallStackString()
{
 java.io.ByteArrayOutputStream byteArrayOutputStream = new java.io.ByteArrayOutputStream();
 java.io.PrintStream printStream = new java.io.PrintStream(byteArrayOutputStream);
 Throwable throwable = new Throwable("Current call stack:");
 throwable.printStackTrace(printStream);
 return byteArrayOutputStream.toString();
}
&lt;/pre&gt;
Note that this works even in pre-1.4 Java versions, since it doesn't use the &lt;a href="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Throwable.html#getStackTrace()"&gt;getStackTrace method&lt;/a&gt; (introduced in Java 1.4).

The output of this method is a string along the lines of the following:
&lt;pre&gt;
java.lang.Throwable: Current call stack:
 at JavaTest.getCallStack(JavaTest.java:36)
 at JavaTest.main(JavaTest.java:24)
&lt;/pre&gt;
A minor variant of this method can be used to get the call stack of an existing Exception:
&lt;pre&gt;
private static String getCallStackString(Throwable throwable)
{
 java.io.ByteArrayOutputStream byteArrayOutputStream = new java.io.ByteArrayOutputStream();
 java.io.PrintStream printStream = new java.io.PrintStream(byteArrayOutputStream);
 throwable.printStackTrace(printStream);
 return byteArrayOutputStream.toString();
}
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-3876415084942978411?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/3876415084942978411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/02/java-getting-string-with-current-call.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3876415084942978411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/3876415084942978411'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/02/java-getting-string-with-current-call.html' title='Java: Getting a String with the current call stack'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-4280654149368648181</id><published>2008-02-13T17:57:00.004-05:00</published><updated>2009-07-01T23:20:14.768-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='usability'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Utility of the day: Taskbar Shuffle</title><content type='html'>&lt;p&gt;A user interface convention that is emerging as a standard for applications that support having multiple pages or documents open in tabs, such as web browsers (including Firefox, Internet Explorer 7, and Opera 9) and &lt;acronym title="Integrated development environment"&gt;IDE&lt;/acronym&gt;s (including Visual Studio and, &lt;a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=156792"&gt;in an upcoming version, Eclipse&lt;/a&gt;), is the ability to click a tab with the middle mouse button to close the tab.  This is useful for several reasons: (1) It's easier to position the mouse cursor over a tab than on a small button on the tab; (2) it prevents accidental closing of a tab with the left mouse button (when the close button on the tab is left-clicked inadvertently instead of on the remainder of the tab area); and (3) optionally, it allows the close button each tab to be removed (resulting in more available space on the tab for displaying the name of the tab's document).
&lt;p&gt;
I always thought it would be nice to be able to apply this same UI convention to Windows Taskbar buttons.  After all, what is the Windows Taskbar but a tabbed view of all open applications?  The ability to middle-click a Taskbar button to close it would be much nicer than having to right-click an application's Taskbar button and choose "Close" from the context menu that appears.  (Trying to close many applications in quick succession in this way can be particularly aggravating when closing an application that doesn't follow the common convention of having the "Close" option as the bottom option in the context menu, such as cmd.exe command prompt windows – you end up having to hunt for the "Close" option among the other options, instead of just clicking the "Close" option immediately.)
 &lt;p&gt;
I recently came across a free utility that allows a middle-click on a Taskbar button to close the application: &lt;a href="http://nerdcave.webs.com/"&gt;Taskbar Shuffle&lt;/a&gt; by Jay E.  The primary purpose of Taskbar Shuffle is, as its name implies, to allow Taskbar buttons to be reordered via a simple drag-drop.  However, Taskbar Shuffle does also implement the middle-click-to-close functionality.  Very cool!
&lt;p&gt;
I was initially a bit leery of installing a utility that hooks directly into Windows' explorer.exe (as I presume that Taskbar Shuffle must do in order to provide the functionality that it does), for fear that the utility could potentially bring down Explorer itself if something were to go wrong.  However, I searched around for comments on the application, and found many very positive comments (including on the app's own &lt;a href="http://www.freewebs.com/nerdcave/forum.htm"&gt;forum&lt;/a&gt;) about the app, and no negative comments, so I took the plunge and installed it.  I'm glad I did; on my machine (running 32-bit Windows XP Pro), Taskbar Shuffle is rock-solid stable!  I've found it to be one of those extension-type applications that is just so useful, you wonder why its functionality isn't built into the base product itself (in this case, Windows).
&lt;p&gt;
One caveat: Apparently the current version (v2.2 as of this writing) doesn't support 64-bit versions of Windows yet.  A 64-bit version might be on the way, though; the application appears to be actively developed, and some text near the download link notes "hold tight for 64-bit".
&lt;p&gt;&lt;b&gt;Update 7/1/2009&lt;/b&gt;: A 64-bit version is now available!  &lt;a href="http://nerdcave.webs.com/"&gt;Go check it out.&lt;/a&gt;
&lt;p&gt;
Go get Taskbar Shuffle from Jay E.'s website, &lt;a href="http://nerdcave.webs.com/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-4280654149368648181?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/4280654149368648181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/02/utility-of-day-taskbar-shuffle.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4280654149368648181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/4280654149368648181'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/02/utility-of-day-taskbar-shuffle.html' title='Utility of the day: Taskbar Shuffle'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-1158089326978013268</id><published>2008-02-07T17:15:00.001-05:00</published><updated>2009-07-01T23:20:45.885-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='utilities'/><title type='text'>Utility of the day: closeall.exe</title><content type='html'>&lt;p&gt;&lt;a href="http://www.ntwind.com/software/utilities/close-all.html"&gt;Closeall.exe&lt;/a&gt; is a great, simple little utility program for Windows that does just one thing: When run, it sends a "close" signal to each running application, as though you had clicked the application's own Close button.  (Thus, each application is closed in a "friendly" manner, having a chance to prompt you if the app has an open document with pending changes that need to be saved, and so forth.)
&lt;p&gt;
I've been using this utility daily, running it as a first step in shutting down my computer.  At the end of a typical work day, I often have many applications open, and using closeall.exe to close them all in a controlled fashion has turned out to be a very nice alternative to either the hassle of manually closing each application one-by-one prior to shutdown, or else telling Windows to shut down with all of my applications still open, and then dealing with the subsequent chaos of Windows trying to shut down all of my applications at the same time that it is also stopping background processes and performing other shutdown tasks.
&lt;p&gt;
Closeall.exe was written using pure Win32 API by &lt;a href="http://www.ntwind.com/"&gt;Alexander Avdonin&lt;/a&gt;.  You can download it from its page at Alexander's ntwind software site, &lt;a href="http://www.ntwind.com/software/utilities/close-all.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22120968-1158089326978013268?l=blog.jonschneider.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jonschneider.com/feeds/1158089326978013268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.jonschneider.com/2008/02/utility-of-day-closeallexe.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1158089326978013268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22120968/posts/default/1158089326978013268'/><link rel='alternate' type='text/html' href='http://blog.jonschneider.com/2008/02/utility-of-day-closeallexe.html' title='Utility of the day: closeall.exe'/><author><name>Jonathan Schneider</name><uri>https://profiles.google.com/109465809713280435321</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-j4PSxfs0nrM/AAAAAAAAAAI/AAAAAAAAAAA/dgQ9YIg-ujc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22120968.post-6510106015993970451</id><published>2008-02-01T16:57:00.001-05:00</published><updated>2009-07-01T23:21:07.018-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='thinkpad'/><title type='text'>Workaround: Mouse Sensitivity Settings Lost after Laptop Re-dock</title><content type='html'>&lt;p&gt;&lt;b&gt;Issue:&lt;/b&gt; After undocking and then re-docking my Thinkpad T60 laptop (running Windows XP), my custom sensitivity settings for my external Logitech mouse (an &lt;a href="http://www.amazon.com/gp/product/B00006HZ0K%3ftag=jonschneiderc-20%26link_code=sp1%26camp=2025%26dev-t=D1GLJ8BR0X7CY7"&gt;MX500&lt;/a&gt;) are lost; in particular, the mouse cursor acceleration effect is gone, and the base speed of the movement of the mouse cursor increases significantly.  
&lt;p&gt;
(Since I run dual high-resolution monitors, I find it very useful and comfortable to set the base mouse cursor speed to a low setting to allow easy precision pointing, and to also enable fairly high acceleration to allow me to move the mouse cursor long distances on my large screen area without having to move the physical mouse a correspondingly long distance on my desk.  Moving the mouse on my machine and expecting to have the cursor respond according to these settings, but instead getting high-speed, no-acceleration cursor movement, feels very jarring.)
&lt;p&gt;
Also, after re-docking, the custom Logitech-provided mouse controls (the "Logitech MouseWare Control Cente
