VimからVisual C++ コンパイラを使う

初期状態のVimだとパスが通ってないのでclコマンドとかが使えません。しょうがないのでコンパイルしたい時はVisual Studio コマンドプロンプトを使っていたんですが、Vimって環境変数を設定することができたんですね。

if has('win32' || 'win64')
	let $DevEnvDir="c:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE;" . $DevEnvDir
	let $PATH="c:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE;c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\BIN;c:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\Tools;c:\\Windows\\Microsoft.NET\\Framework\\v3.5;c:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727;c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\VCPackages;C:\\Program Files\\Microsoft SDKs\\Windows\\v6.0A\\bin;" . $PATH
	let $INCLUDE=" c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\ATLMFC\\INCLUDE;c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\INCLUDE;C:\\Program Files\\\\Microsoft SDKs\\Windows\\v6.0A\\include;C:\\Program Files\\Microsoft Visual Studio .NET 2003\\SDK\\v1.1\\include\\;" . $INCLUDE
	let $LIB="c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\ATLMFC\\LIB;c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\LIB;C:\\Program Files\\\\Microsoft SDKs\\Windows\\v6.0A\\lib;C:\\Program Files\\Microsoft Visual Studio .NET 2003\\SDK\\v1.1\\Lib\\;" . $LIB
	let $LIBPATH="c:\\Windows\\Microsoft.NET\\Framework\\v3.5;c:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727;c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\ATLMFC\\LIB;c:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\LIB;" . $LIBPATH
endif

こんな感じにすればsystem()からもquickrunからもVimShellからもclコマンドが使えます。
ちなみにパスはVisual Studio コマンドプロンプト(実体はバッチファイル)から探しました。