Scott Hanselman

Vista's "Show Compatibility Files" and the Scrumptious Wonder that is File Virtualization

December 01, 2006 Comment on this post [7] Posted in Musings | Reviews
Sponsored By

I was trying to convert some (totally legal) video files into MP4 format for use on my iPod for an upcoming trip to Arusha. I used the Videora iPod Convertor, by the way. By default Videora is set to write to: C:\Program Files\VideoraiPodConverter\Videos so I opened an explorer window and watched that folder for my output files to show up. After hours of converting. Nothing. I searched my hard drive high and low. Nada. What was it chewing on so long? I should have at LEAST 2 gigs of MP4s now. Where are they. I tried again. Hours past. Nothing.

What's this button "Compatibility Files?"

Um, OK. Click.

Zoinks!

Then I remembered. In Vista the rules are that if you don't have explicit (by requesting) elevated permissions to write to C:\Program Files, the system lets you think you are writing there but actually redirects (virtualizes) your writes elsewhere. Jerry has some details here, where I took the next picture from.

On the surface, this sucks in a huge way, especially for my Mom in the "where are my files" kind of way.

As far as programs on my system, there's a number of "mal-behaved" programs that are getting their writer redirected to the "Virtual Store." Of note are MSN Messenger, the new Nero, and FireFox.

Ideally apps will write to the places they should be writing to, like Isolated Storage and such. Apps like Videora should include a manifest that explains what they're going to need (security and permissions demands) so that the consent dialog (run my Consent.exe of all things) would be issued automatically.

Personally, I'd rather see a UI with a link or button in the folder rather than in the Toolbar. It is pretty important and blends in there.

The other really bad UI issue is that there's no way to get to the compatibility-based Virtual Store from the common file open/save dialogs.

The same redirection CAN happen with apps that try to write to registry in HKLM, so watch for that also if something "goes missing."

I can see how hard they're working to make Vista more secure while still maintaining extensive backward compatibility. I haven't had any apps (other than one Java app) bork under Vista yet, but things like this Virtual Store will be confusing until new minor releases of apps with a modicum of Vista-awareness come out.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Camera Panner using a Floppy Drive Stepper Motor controlled by a Parallel Port

December 01, 2006 Comment on this post [0] Posted in Programming
Sponsored By

Here's a clever guy to watch, Ashish Derhgawen in New Delhi. He's an 18 year old student and he's a wiz at hardware hacks. I've been picking his brain about Coding4Fun ideas, and we might turn his laser-pointer obstacle dectector into an article. He's been getting into WebCams. He's just set up a Web Camera panner using the stepper motor of a Floppy Drive, controlled via the Parallel Port. Seriously, read that last sentence again and drink it in. I'll wait....

Take a look at the YouTube videos on his site. I "met" Ashish while talking about working on a Morse Code application with Ward Cunningham. We want to make a program that will notice an LED blinking Morse Code in a Video and then add decoded subtitles of the morse code as an overlay. Ashish started by getting an LED to flash using the Parallel Port as power and control (video here) and here.

Head over to his site and post a few comments of encouragement and/or ideas on his software, will you? I wish I was this industrious when I was his age. Only took me 15 extra years!

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Short: My Visual Studio Color Settings

December 01, 2006 Comment on this post [10] Posted in Tools
Sponsored By

UPDATE: http://studiostyles.info/ for a great growing community of Visual Studio Styles and Themes. You can create, import and export themes in your browser!

Here's my freshly exported and slightly tweaked Visual Studio 2005 color settings per popular demand. I'm mixing Consolas and Inconsolata fonts. More font discussion and comparison shots on DamienG's site. Be sure to click the image, as he's highlighted what he thinks are the problems with rendering in each of the font samples. He also posts his tweaked InconsolataDG with a slashed zero while he waits for Raph Levien's revised version.

Scott Hanselman's Visual Studio 2005 Font and Color Settings

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

CardSpace/InfoCard for .NET 1.1

December 01, 2006 Comment on this post [1] Posted in ASP.NET | DasBlog | Tools | Web Services | XML
Sponsored By

CardSpace Screencast Perhaps I'm old-school, but we still do a lot of work on .NET 1.1. It's pretty clear that the technology is moving faster than the business, and you can't always run the latest stuff. Besides, 1.1 works very nicely, thank you very much.

While working on an InfoCard/CardSpaces integration project recently (screencast and Identity Podcast and WS-* Podcast) I asked Garrett Serack (nicely) of the CardSpaces team at MSFT to make me a TokenHelper (the code that opens up an Information Card after it's passed to the server from a client like Windows CardSpace) that would work in .NET 1.1.

My argument was/is that many folks who have .NET 1.1 ASP.NET applications might want to include integration with CardSpaces without necessarily moving the whole app to .NET 3.0. I told him I figured it was a few hours work, total, and that I was far too lazy to do it myself. He figured it was about 40 minutes work, being that he's on the team and all. Six weeks and three complete re-writes later, Garrett announces a functional .NET 1.1 Token processor that correctly processes SAML tokens from CardSpace. I encourage you to check it out.

Take a look at the stuff that Kevin Hammond has been doing at enabling DasBlog for Infocard as a comment/admin authentication method. I've really insisted that the DasBlog team (so far) support both .NET 1.1 and 2.0 for flexibility in hosting, and this tool from Garrett will also help us enable DasBlog for InfoCard without insisting on ISPs hosting .NET 3.0.

Brilliant and Kudos to all involved. Thanks Garrett! 

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Getting Video out of an Apple iPod with a standard Audio Video RCA Cable

December 01, 2006 Comment on this post [3] Posted in Tools
Sponsored By

I received an 80GB iPod Video for Christmas and immediately wanted to watch a movie with it. I went up to iTunes and got the free 40 minute "Battlestar Galactica: The Story So Far" video. I didn't get an official $20 iPod Video Cable or $100 AV Connection Kit, and I'm also a cheap b*stard, so I went looking for a standard RCA adapter around the house that one uses to hook up a camcorder.

I plugged it in, started the video after setting TV Out to On on the iPod and selecting NTSC as the format as we're in North American, and...nothing. Zippo.

I thought I might have to buy a real cable, but come on, it's just four wires, this should "just work."

Then I realized that the thing that's unique about the iPod (or at least different from my camcorder) is that one headphone connector is used for audio and video.

A 1/8" standard headphone connector has three "connectors" in the form of three rings in the plug itself. One ring corresponds to one output cable.

So, on a standard microphone, there's three rings:

  • Tip - Left Channel
  • Middle Ring - Right Channel
  • Ring closest to the cable - Ground

When hardware folks want to add functionality, they add a ring and make the connector longer.

In the picture at the upper right (from CameraHacker.com) there are FOUR rings on this standard video cable.

  • Tip - Left Channel
  • First Ring - Video
  • Second Ring - Ground
  • Ring closest to the cable - Right Channel

Notice that the rings are very different...that wouldn't be a problem if the 1/8" jack was ONLY used for audio. However, remember that the iPod needs the jack to work for both standard headphones, and for video.  Thus, they had to change the pin assignments for compatibility. (Folks have apparently accused them of changing pins to make money. I don't think so, this makes more sense.)

figure 3aSince they had to make the tip longer than a standard headphone tip, it makes sense that they'd put the video farther down (deeper into the headphone jack).

  • Tip - Left Channel
  • First Ring - Right Channel
  • Second Ring - Ground
  • Ring closest to the cable - Video

figure 3bThis means that when using an standard RC 1/8" AV Cable on an iPod, that the Video now runs through the red wire and the Right Channel is now in the yellow wire.

After I figured this out, I saw this article on O'Reilly, but this gentleman, IMHO, got it wrong, as he has reversed his right and left audio channels now. You just need to swap Yellow and Red.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.