MSVC++.Net at the command line

Introduction

It is often useful to be able to invoke the development environment from the command line. To do this, the environment needs to be set up appropriately for .NET. A .bat file is supplied as part of the installation and can be found at C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\vsvars32.bat . Executing this will correctly set up your local environment. 

Invocation

The IDE is invoked by typing devenv at the command-line prompt. A list of arguments can be obtained by typing devenv /? . Here is the result:

Microsoft (R) Development Environment  Version 7.00.9466.
Copyright (C) Microsoft Corp 1984-2001. All rights reserved.
Usage:
devenv  [solutionfile | projectfile | anyfile.ext]  [switches]
You can invoke devenv with a first argument to specify a solution file or
project file.  You can also invoke devenv with a first argument that is any
other kind of file that you just want to open in an editor.  When you supply a
project file, the IDE opens it in the context of a solution by looking for a
.sln file with the same base name as the project file in the same
directory as the project file.  If no such .sln file exists, then the IDE
looks for a single .sln file that references the project.  If no such single
.sln file exists, then the IDE creates an unsaved solution with a default .sln
file name that has the same base name as the project file.
Command line builds:
devenv solutionfile.sln  /build solutionconfig [ /project projectnameorfile [ /projectconfig name ] ]
Available command line switches:
/build		build the specified solution configuration
/project	specifies the project to build instead of solution
		must specify /build to use /project
/projectconfig	specifies project configuration to build
		must specify /project to use /projectconfig
/out		write build output to specified file
/rebuild	like /build but forces a clean first
/clean		clean up build outputs
/deploy		build the specified solution configuration and then deploy it
/run		run the specified solution configuration
/runexit	run the specified solution configuration and then terminate
/command	executes the specified internal command line after startup
/mditabs	use tabbed documents interface
/mdi		use MDI interface
/fn		use specified font name
/fs 		use specified font size
/LCID		use specified language ID
/noVSIP		disables VSIP developers license key for VSIP testing
/safemode	only default environment and services load for stability
/resetskippkgs	allow VsPackages once flagged for loading failures to
		load again
Product-specific switches:
/debugexe	Open the specified executable to be debugged. The
		remainder of the command line is passed to this
		executable as its arguments.
/useenv		Use PATH, INCLUDE, LIBPATH, and LIB environment variables
		instead of IDE paths for VC++ builds.
To attach the debugger from the command line, use:
	vs7jit.exe -p <pid>

Contact

If you have any comments or suggestions, especially contributions to improve this set of instructions, please contact me.

Norman Graf