I’ve seen several queries asking how to launch Visual Studio 2005 opening a specific folder as a website from the command line. Unfortunately Visual Studio 2005 does not support this by default but you can enable the scenario by writing a macro.
To do this, create a new macro either in an existing module or in a new module. For this example I’m going to add a module call Website to the MyMacros project.
If you’re new to macros in Visual Studio 2005, select menu Tools/Macros/Macros IDE, then select the MyMacros project and add a module.
Before you can use the new Website extensibility objects within VS you’ll need to add a reference to VsWebSite.Interop.dll.
Once added you can add the following code:
Public Module Website
Sub OpenWebsite(Optional ByVal path As String = "")
If (String.Compare(path, String.Empty) = 0) Then
MsgBox("Must supply a folder path to the OpenWebsite macro", MsgBoxStyle.OkOnly)
Dim webPkg As VsWebSite.VSWebPackage
webPkg = DTE.GetObject("WebPackage")
webPkg.OpenWebSite(path, VsWebSite.OpenWebsiteOptions.OpenWebsiteOption_None, False)
After this code is added you’ll be able to run the macro. You can test it out in the command window.
From the Command Window in VS:
From the Command Line:
devenv /command "Macros.MyMacros.Website.OpenWebsite C:\MyProjects\MyCompany\CompanySite"
After its working you can register a shell command enabling an “Open as Visual Studio Website” command on any folder in windows explorer.
To do this copy the following into a OpenWebsite.reg file and run it.
Windows Registry Editor Version 5.00
@="Open as Visual Studio Website"
@="devenv.exe /command \\\"Macros.MyMacros.Website.OpenWebsite %1\\\""
Now you should be able to right click on a folder in Windows Explorer and select “Open as Website”.
Hope this helps,