Scott Hanselman

Visual Studio 2003 disappears when opening a Web Project

March 29, '06 Comments [7] Posted in ASP.NET | Bugs
Sponsored By

My buddy Ramkumar at work today had a weird problem. When he opened a Web Project in Visual Studio 2003, the IDE *disappeared*. Not crashed, not Dr. Watsoned, but poof. Aren't those the best bugs?

Anyway, we poked around for a bit and did these things that one does when debugging VS.NET 2003 Web Project problems.

  • Checked that IIS was running and on Port 80. Check. Not the problem.
  • Checked that ASP.NET was installed and installed it again just in case with ASPNET_REGIIS.EXE -i. Check. Not the problem.
  • Checked with Spybot that nothing nasty was installed and watching the network. Check. Not the problem.
  • Checked that Front Page Extensions were installed by right clicking a VDir within IIS's MMC-based Admin.
    • Yikes, not there. How could VS.NET have installed, FP is a prerequisite.
    • Went into Add/Remove Programs, then Windows Setup and installed Front Page Extensions.
    • Then configured FP by right-clicking the Web and selecting "Configure Front Page Extensions"

Then it all worked and we were left with that sickening feeling that we had a small spot on our floor and ended up laying down completely new carpet.

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 twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

AnkhSVN and a Monad SVN Provider?

March 28, '06 Comments [10] Posted in PowerShell | ASP.NET | Subversion | Bugs
Sponsored By

There's an interesting and ongoing, but not-to-often-updated project called AnkhSVN that aims to bridge the Visual Studio .NET IDE and its Source Code Control (SCC) Provider model with the SVN Source Repository.

The latest totally unstable snapshot installer can be found at the bottom of this page. As with all scary alpha stuff, use at your own risk. You can get daily updates at the CIA that show that a burst of development is happening. The screenshots are here and the details on how to get the source code via SVN is on their wiki. I use TortoiseSVN for SVN access. (Note that the latest release has built-in support for the ASP.NET hack/fix.)

UPDATE: I assumed that since there hasn't been a release in a while that the source I found was in an unstable state. The author responded in the comments, and it turns out the current source is more stable than the current release, fixing a number of bugs. I've been using Ankh at work for the majority of my SVN work and haven't had any problems.

All this isn't news, nor is it that interesting, IMHO. The really interesting stuff lies in the deep web (the sometimes-Google-able but not always easily)...if you actually retrieve the SVN repository as Patrick Cauldwell pointed out to me, you'll see that there appears to be a Microsoft Command Shell (MSH/Monad) Provider in the works for Subversion.

Nutshell...in Monad/MSH you can "cd" into more than just drives. You can say "cd HKLM:" and run around the Registry like it was a disk drive. You can say "cd ENV:" and poke around inside of the Environment Variables. The possibilities are endless when you can create your own MSH Providers. One guy has one that lets you look at Windows Services as if they were a location. Not sure why that is interesting, but it's cool. This time next year there will be dozens, I'm sure. Here's the start of a Visual Sourcesafe MSH Provider.

It looks like this particular provider would be used like this:

new-provider C:\dev\svnprovider\Svn.cmdletprovider
new-drive ankh svn
http://mysubversionsystem/svn/finalproject
cd ankh:

I'd have a screen shot for you, but trying to compile this stuff is the Trials of Job. The provider is lovely, written in C# 2.0, but it has dependencies on NSvn.Core and a number of other Managed C++ which themselves have dependencies on C. Then there's the whole Python gen-make.py thing that actually generates the makefiles, yada yada. It's very MacGyver.

I'll wait and hope it's released soon. Perhaps the author will notice that we noticed and chime in!

UPDATE: Holy CRAP there is some stuff in Monad/MSH that is OBSCURE. Sheesh. I'm getting 0x8007007e COM Errors from Snapins, zero feedback if things are working, and this whole assembly loading thing is just death. Anyway. Rather than trying to get the files I needed by building, instead I installed the latest build of Ankh and referenced its assemblies directly, then built just the SvnProvider myself. Elsewhere on the net folks were using InstallUtil to add cmdlets and providers, but I couldn't figure that out, so instead I created these registry keys. I had to put the new provider assembly in the same directory as Ankh.

Registry Editor Monad 1

Then I was able to do this from MSH:

MSH C:\> add-mshsnapin Rogue.Monad.Provider.dll
MSH C:\> get-provider

Name                 Capabilities                  Drives
----                 ------------                  ------
Alias                ShouldProcess                 {Alias}
Environment          ShouldProcess                 {Env}
FileSystem           Filter, ShouldProcess         {C, D, T, Z, A, E, F, G}
Function             ShouldProcess                 {Function}
Registry             ShouldProcess                 {HKLM, HKCU}
Variable             ShouldProcess                 {Variable}
Certificate          ShouldProcess                 {cert}
Svn                  None                          {}

There it is at the bottom. Then I did

MSH C:\> new-drive ankh svn http://www.ankhsvn.com/svn/finalproject/trunk/src/

Name       Provider      Root                                   CurrentLocation
----       --------      ----                                   ---------------
ankh       Rogue.Mona...
http://www.ankhsvn.com/svn/final...

MSH C:\documents and Settings\scott\Desktop> cd ankh:
MSH ankh:\> dir

Then I got stuff like:

MSH ankh:\> dir

MshPath         : Rogue.Monad.Provider.dll\Svn::http://www.ankhsvn.com/svn/fina
                  lproject/trunk/src/Ankh
MshParentPath   : Rogue.Monad.Provider.dll\Svn::http://www.ankhsvn.com/svn/fina
                  lproject/trunk/src
MshChildName    : Ankh
MshDrive        : ankh
MshProvider     : Rogue.Monad.Provider.dll\Svn
MshIsContainer  : True
LastAuthor      : macgyver
Time            : 3/20/2006 11:01:54 PM
CreatedRevision : 2408
HasProperties   : True
Size            : 0
NodeKind        : Directory
Path            : Ankh

And then:

MSH ankh:\> dir | format-table MshPath,LastAuthor,CreatedRevision,Size,NodeKind

MshPath         LastAuthor      CreatedRevision            Size        NodeKind
-------         ----------      ---------------            ----        --------
Rogue.Monad.... macgyver                   2408               0       Directory
Rogue.Monad.... ProjectAutoU...            2012           18591            File
Rogue.Monad.... Arild                      2386             312            File
Rogue.Monad.... Arild                       443               0       Directory
Rogue.Monad.... Arild                      1990               0       Directory
Rogue.Monad.... macgyver                   2351           18809            File
Rogue.Monad.... Arild                      2112             142            File
Rogue.Monad.... Arild                       747           91588            File
Rogue.Monad.... macgyver                   1713               0       Directory
Rogue.Monad.... macgyver                   2354               0       Directory
Rogue.Monad.... Arild                      2362               0       Directory
Rogue.Monad.... macgyver                   2388               0       Directory
Rogue.Monad.... Arild                      2137           16372            File
Rogue.Monad.... macgyver                   2285               0       Directory
Rogue.Monad.... Arild                      1154             198            File

I couldn't figure out how to get just the interesting path bits on the right side of MshPath. Someone will know.

Monad folks - I read the docs, did the labs, but there's a HUGE dearth of good doc on this. ETA?

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 twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Call for Proposals - TechEd 2006 Birds of a Feather

March 28, '06 Comments [2] Posted in TechEd | Speaking
Sponsored By

If you're going to TechEd 2006, it's time to submit your proposals for the Birds of a Feather sessions. You can also Vote on your Favorite Sessions and directly influence what sessions are chosen.

You'll need to get your proposals in by this Friday. If you're interested in speaking publically, the BoFs are a great opportunity to get your feet wet.

If you're not going, live the dream vicariously with TechEd Bloggers.

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 twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

The Ultimate Zoom Tool? Sysinternal's ZoomIt

March 27, '06 Comments [1] Posted in Musings | Tools
Sponsored By

I've mentioned a number of Zoom Tools over the years, and most recently had settled on Magnifixer.

But...OMG, people, check out Mark Russinovich's new ZoomIt tool. This is a different take, IMHO, on a zoom tool for presentations. Some folks like the "drag a magnifying glass" paradigm. ZoomIt takes a different tack, zooming in the entire screen.

I have an IBM T42 with a "Zoom Craplet" that, with a press of FN-Space, automatically changes the screen resolution. This is cool, but the subsequent re-syncing of the projector makes it totally unusable for presentations.

ZoomIt does the same thing but without changing the screen resolution, but also includes screen writing/drawing/annotation. Fantastic.

The only downside of ZoomIt is that you're looking at a zoomed in snapshot of the current screen. You aren't getting live window updates when you're zoomin.

Magnifixer does give you live updates, as well as some other niceties like an eye-dropper/rgb value lookup.

Still, between these two tools, I'm totally covered when it comes to zooming into during a presentation.

Thanks to reader and fellow presenter and trainer Gerben Wieringa for the heads up!

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 twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Z Leaving on a Midnight Train

March 27, '06 Comments [12] Posted in Javascript | Parenting | Z
Sponsored By

Forgive my singing in this video clip, but this was just too cute not to share. Z turns 4 calendar months old on Wednesday and he's a different guy every day. What a blast we're having. He's jabbering on, finally sleeping through the night and talking to himself to wake us up in the morning. He is absolutely hilarious and we're loving the time we spend with him. I don't know how you folks with kids can concentrate when you are away from them. My wife misses her job and her interaction with adults, but she's said she wouldn't trade this opportunity for the world.


play video
stop video
indicatorhandleamount downloaded
toggle sound
launch in external player
Launch the streaming media file

We're a little bittersweet as he's growing up so fast. Every day that goes by is another day that he won't be that age. I mean, he'll only be under a year for, well, a year. That's only 365 days of baby, and really only 6 months of tiny baby. We already miss the little 2-week old Z. I wonder what it'll feel like when he's 15 or 30.

All that said, I'm really looking forward to him walking around and developing opinions. We read to him now, but he's not paying much attention. I'm sure he's a little sponge, but when he starts talking and really interacting it's going to be a freaking blast.

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 twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

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