您的位置:首页 > 其它

集成VS2008命令行编译到.sln文件的右键菜单

2012-03-01 11:04 375 查看
背景:VS2008很好很强大,但太费系统资源了,尤其是在虚拟机在里面装VS2008的时候更是如此。有时用vi编辑了源代码后,不想开VS IDE编译,但每次打开VS2008命令行,再切换到工程所在目录,然后手动敲命令太麻烦了。于是产生了集成集成VS2008命令行编译到.sln文件右键菜单的想法。

先上效果图:



1) VS2008命令行编译的命令:

[plain]
view plaincopyprint?

// 编译Debug版本
"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\vcbuild.exe" xxx.sln "Debug|Win32"

[plain]
view plaincopyprint?

"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\vcbuild.exe" %1 "Debug|Win32"

"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\vcbuild.exe" %1 "Debug|Win32"

但直接执行该命令的时候,cmd窗口闪一下就消失了,看不到编译结果。

4) 利用 cmd /K 命令,在执行了以上命令后保持命令行窗口不退出,以便查看编译结果。

最终命令为:

[plain]
view plaincopyprint?

cmd /K ""C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\vcbuild.exe" %1 "Debug|Win32""

[plain]
view plaincopyprint?

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell]

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug]

@="命令行编译(Debug)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug\command]

@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" %1 \"Debug|Win32\"\""

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease]

@="命令行编译(Release)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease\command]

@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" %1 \"Release|Win32\"\""

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell]

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug]
@="命令行编译(Debug)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug\command]
@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" %1 \"Debug|Win32\"\""

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease]
@="命令行编译(Release)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease\command]
@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" %1 \"Release|Win32\"\""

EasyVCR update@2011.11.08

--------------------------------------------------------------------------------

上面的reg有点bug: 当.sln文件的全路径中包含空格时,会出错,修正如下:

最终命令为:

[plain]
view plaincopyprint?

cmd /K ""C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\vcbuild.exe" "%1" "Debug|Win32""

[plain]
view plaincopyprint?

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell]

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug]

@="命令行编译(Debug)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug\command]

@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" \"%1\" \"Debug|Win32\"\""

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease]

@="命令行编译(Release)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease\command]

@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" \"%1\" \"Release|Win32\"\""

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell]

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug]
@="命令行编译(Debug)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\buildDebug\command]
@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" \"%1\" \"Debug|Win32\"\""

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease]
@="命令行编译(Release)"

[HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\Shell\bulildRelease\command]
@="cmd /K \"\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\vcpackages\\vcbuild.exe\" \"%1\" \"Release|Win32\"\""


EasyVCR update@2011.11.09

--------------------------------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: