Friday, August 22, 2008

Vista UAC not compatible with VS2005

So I tried installing Visual Studio 2005 on my Vista machine at home. After installing a default install of VS2005, you need to install three service packs to run it on a Vista machine:

  1. Visual Studio 2005 Service Pack 1
  2. Visual Studio 2005 Service Pack 1 Update for Windows Vista
  3. SQL Server Express Service Pack 2 (the SQL Server Express is installed by the default VS2005 installation but it's not Vista compatible without the service pack update)

So anyhow after that, it is recommended that you set the VS2005 app to "Run As Administrator".

Even then you'll probably run into a whole hose of issues noted by Microsoft.

The big three issues I ran into immediately even after doing this were:

  • Double-clicking on a file (*.cpp) launches VS2005 but fails to open the file in VS2005
  • Drag-and-Drop of a file(*.cpp) from Explorer to the VS2005 Editor Pane fails to open the file in the editor
  • Drag-and-Drop of a file(*.cpp) from Explorer to the VS2005 Project Pane fails to add the file to the project

Now the Drag-and-Drop issues (where VS2005 is the target for the 'Drop') also seem to occur for P4 and other programs.

Supposedly there are two ways to fix this:

  1. Set all your programs that could Drag-and-Drop to VS2005 to "Run as Administrator"
  2. Disable UAC

#1 is a bad idea since I'd have to Run as Administrator for Explorer which defeats a big chunk of UAC anyhow. Plus it'd be a pain to enable this for any program that could Drag-And-Drop to VS2005 (although right now that's probably only 3 programs for me: Explorer, P4, and FileLocator Pro).

I ended up disabling UAC (#2) for now which is unfortunate since UAC would be a good idea if it worked without extreme inconvenience to VS2005 users. However, disabling UAC also causes the Windows Security Center to put an angry icon in the system tray :(

Update: I tried re-enabling UAC and doing #1 but it turns out that #1 doesn't work. VS2005 only allows drag-and-drop with UAC disabled!

No comments: