`
drswinghead
  • 浏览: 4969 次
  • 性别: Icon_minigender_1
  • 来自: 山里人
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

自己动手制作VC++2010绿色版

阅读更多
绿色版本需求:不需要安装即可使用,干净不带IDE,不带其他语言C#、F#开发工具,不带SqlServer相关开发工具,不带.NET4 SDK,
整个包较原版安装包小,支持编译调试版本的程序,支持x86、x64、以及x86交叉编译x64应用程序。

制作环境:
Windows 7 ultimate中文版本。
VS2010安装在默认的C:\Program Files (x86)\Microsoft Visual Studio 10.0\目录。
绿化环境在Z:\VC2010\目录。

1. 到MicroSoft官方网站下载 MicroSoft Visual Studio 2010 retail 30天试用版本,安装时选择只安装VC++工具,
包括x64开发包,但不包括IA64开发包。
测试运行无误,准备完毕。这原版VC++2010战用磁盘5.5G左右。

2. 创建VC++2010绿色版基础目录结构。
Z:\VC2010\bin\
Z:\VC2010\lib\
Z:\VC2010\include\
Z:\VC2010\atlmfc\
Z:\VC2010\crt\
Z:\VC2010\PlatformSDK\
Z:\VC2010\redist\
Z:\VC2010\system32
Z:\VC2010\SysWOW64\
Z:\VC2010\ide\
Z:\VC2010\scripts\

3. 拷贝VC++2010基本包文件
注:下面的说明把C:\Program Files (x86)\Microsoft Visual Studio 10.0\简写为CPMS,
把C:\Program Files (x86)\ 简写为CPF86。
把CPMS\目录下的altmfc, include,bin,lib,crt,redist目录拷贝到Z:\VC2010\。
把CPF86\Microsoft SDKs\Windows\v7.0A\目录下的include,lib拷贝到Z:\VC2010\PlatformSDK\。
把CPF86\Microsoft SDKs\Windows\v7.0A\bin\目录下的mt.exe, mt.exe.config, rc.exe, rcdll.dll 四个文件拷贝到Z:\VC2010\PlatformSDK\。

4. 拷贝VC++2010中用到的附加库及程序
把C:\Windows\SysWOW64\msvcr100_clr0400.dll 拷贝到Z:\VC2010\SysWOW64\。
把C:\Windows\System32\msvcr100_clr0400.dll 拷贝到Z:\VC2010\system32\。
这两个文件是编译过程中COFF文件格式转换工具cvtres.exe使用的,x86,x64两个平台下使用两个不同的版本。

把CPMS\Common7\IDE\目录下的 msobj100.dll, mspdb100.dll, mspdbcore.dll, mspdbsrv.exe, mspdbst.dll 五个文件拷贝到Z:\VC2010\ide\。
这几个文件是编译调试版本的程序或者库时乃至的程序。

5. 编写VC++运行环境变量脚本。
一共有4个要编写的脚本,分别为,
Z:\VC2010\vc2010.bat 运行环境启动入口脚本。
Z:\VC2010\scripts\vcvars32.bat x86运行环境相关变量设置脚本。
Z:\VC2010\scripts\amd64\vcvars64.bat x64运行环境相关变量设置脚本。
Z:\VC2010\scripts\x86_amd64\vcvarsx86_amd64.bat 在x86平台上交叉编译x64程序或者库运行环境相关变量设置脚本。

这四个脚本都有参考脚本,可在原版安装目录中找到。

a) Z:\VC2010\vc2010.bat
主要是注册绿色版VC2010的安装目录,然后根据不同的参数确定不同的运行平台,调用下面对应平台上的环境设置脚本。
set VCINSTALLDIR=Z:\VC2010

@echo off
if "%1" == "" goto x86
if not "%2" == "" goto usage

if /i %1 == x86       goto x86
if /i %1 == amd64     goto amd64
if /i %1 == x64       goto amd64
if /i %1 == ia64      goto ia64
if /i %1 == x86_amd64 goto x86_amd64
if /i %1 == x86_ia64  goto x86_ia64
goto usage

:x86
if not exist "%VCINSTALLDIR%\scripts\vcvars32.bat" goto missing
call "%VCINSTALLDIR%\scripts\vcvars32.bat"
goto :eof

:amd64
if not exist "%VCINSTALLDIR%\scripts\\amd64\vcvars64.bat" goto missing
call "%VCINSTALLDIR%\scripts\\amd64\vcvars64.bat"
goto :eof

:ia64
if not exist "%VCINSTALLDIR%\scripts\ia64\vcvars64.bat" goto missing
call "%VCINSTALLDIR%\scripts\ia64\vcvars64.bat"
goto :eof

:x86_amd64
if not exist "%VCINSTALLDIR%\scripts\x86_amd64\vcvarsx86_amd64.bat" goto missing
call "%VCINSTALLDIR%\scripts\x86_amd64\vcvarsx86_amd64.bat"
goto :eof

:x86_ia64
if not exist "%VCINSTALLDIR%\scripts\x86_ia64\vcvarsx86_ia64.bat" goto missing
call "%VCINSTALLDIR%\scripts\x86_ia64\vcvarsx86_ia64.bat"
goto :eof

:usage
echo Error in script usage. The correct usage is:
echo     %0 [option]
echo where [option] is: x86 ^| ia64 ^| amd64 ^| x86_amd64 ^| x86_ia64
echo:
echo For example:
echo     %0 x86_ia64
goto :eof

:missing
echo The specified configuration type is missing.  The tools for the
echo configuration might not be installed.
goto :eof

:eof


b) Z:\VC2010\scripts\vcvars32.bat
@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR

@echo Setting environment for using Microsoft Visual Studio 2010 x86 tools.

@set PATH=%VCINSTALLDIR%\BIN;%VCINSTALLDIR%\PlatformSDK\bin;%PATH%
@set PATH=%VCINSTALLDIR%\redist\x86\Microsoft.VC100.CRT\;%VCINSTALLDIR%\SysWOW64;%PATH%
@set PATH=%VCINSTALLDIR%\redist\Debug_NonRedist\x86\Microsoft.VC100.DebugCRT;%VCINSTALLDIR%\ide;%PATH%
@set INCLUDE=%VCINSTALLDIR%\ATLMFC\INCLUDE;%VCINSTALLDIR%\INCLUDE;%VCINSTALLDIR%\PlatformSDK\include;%INCLUDE%
@set LIB=%VCINSTALLDIR%\ATLMFC\LIB;%VCINSTALLDIR%\LIB;%VCINSTALLDIR%\PlatformSDK\lib;%LIB%
@set LIBPATH=%VCINSTALLDIR%\ATLMFC\LIB

@goto end


:error_no_VCINSTALLDIR
@echo ERROR: VCINSTALLDIR variable is not set.
@goto end

:end

c) Z:\VC2010\scripts\amd64\vcvars64.bat

@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR

@echo Setting environment for using Microsoft Visual Studio 2010 x64 tools.

@set PATH=%VCINSTALLDIR%\BIN\amd64;%VCINSTALLDIR%\PlatformSDK\bin\win64\amd64;%VCINSTALLDIR%\PlatformSDK\bin;%VCINSTALLDIR%\BIN;%PATH%
@set PATH=%VCINSTALLDIR%\redist\x64\Microsoft.VC100.CRT\;%VCINSTALLDIR%\System32;%PATH%
@set PATH=%VCINSTALLDIR%\redist\Debug_NonRedist\x64\Microsoft.VC100.DebugCRT;%VCINSTALLDIR%\ide;%PATH%
@set INCLUDE=%VCINSTALLDIR%\ATLMFC\INCLUDE;%VCINSTALLDIR%\INCLUDE;%VCINSTALLDIR%\PlatformSDK\include;%INCLUDE%
@set LIB=%VCINSTALLDIR%\ATLMFC\LIB\amd64;%VCINSTALLDIR%\LIB\amd64;%VCINSTALLDIR%\PlatformSDK\lib\x64;%LIB%

@set LIBPATH=%VCINSTALLDIR%\ATLMFC\LIB\amd64;%LIBPATH%

@goto end

:error_no_VCINSTALLDIR
@echo ERROR: VCINSTALLDIR variable is not set.
@goto end

:end


d) Z:\VC2010\scripts\x86_amd64\vcvarsx86_amd64.bat

@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR

@echo Setting environment for using Microsoft Visual Studio 2010 x64 cross tools.

@set PATH=%VCINSTALLDIR%\BIN\x86_amd64;%VCINSTALLDIR%\BIN;%VCINSTALLDIR%\PlatformSDK\bin;%PATH%
@set PATH=%VCINSTALLDIR%\redist\x86\Microsoft.VC100.CRT\;%VCINSTALLDIR%\SysWOW64;%PATH%
@set PATH=%VCINSTALLDIR%\redist\Debug_NonRedist\x86\Microsoft.VC100.DebugCRT;%VCINSTALLDIR%\ide;%PATH%
@set INCLUDE=%VCINSTALLDIR%\ATLMFC\INCLUDE;%VCINSTALLDIR%\INCLUDE;%VCINSTALLDIR%\PlatformSDK\include;%INCLUDE%
@set LIB=%VCINSTALLDIR%\ATLMFC\LIB\amd64;%VCINSTALLDIR%\LIB\amd64;%VCINSTALLDIR%\PlatformSDK\lib\amd64;%LIB%

@set LIBPATH=%VCINSTALLDIR%\ATLMFC\LIB\amd64;%LIBPATH%

@goto end

:error_no_VCINSTALLDIR
@echo ERROR: VCINSTALLDIR variable is not set.
@goto end

:end

6. 创建启动快捷方式。
一共有3个,分别为:
VC++2010_x86.lnk
VC++2010_x64.lnk
VC++2010_x86-amd64.lnk

i) VC2010_x86.lnk 属性设置
设置目标:%comspec% /k ""Z:\VC2010\vc2010.bat"" x86
起始位置:Z:\VC2010

ii) VC2010_x64.lnk 属性设置
设置目标:%comspec% /k ""Z:\VC2010\vc2010.bat"" amd64
起始位置:Z:\VC2010

iii) VC2010_x86-amd64.lnk 属性设置
设置目标:%comspec% /k ""Z:\VC2010\vc2010.bat"" x86_amd64
起始位置:Z:\VC2010

需要注意的是,这几个快捷方式的字体属性指定为NSimsun,不要使用点阵字体,否则在其他语言版本的系统上有问题。

现在需要使用不同环境的VC++2010只需要点击相应的启动快捷方式就可以进入对应环境的编译命令行了。

附后:
如果需要设置自定义的一些环境变量,可以修改vc2010.bat入口脚本头几行,设置可生效。
1
2
分享到:
评论
1 楼 oCameLo 2011-02-13  
vcupgrade跑不起来,遇到vcproj还是搞不定…

相关推荐

    VC++6.0绿色版

    **VC++6.0绿色版**是一款经典的编程开发环境,尤其适合初学者学习C和C++语言。作为一款轻量级的软件,它无需复杂的安装过程,用户可以直接解压使用,方便快捷。以下是对该软件及其特点的详细介绍: 1. **Visual C++...

    VC++6.0绿色完整版

    【VC++6.0绿色完整版】是一款经典的微软Visual C++开发环境的简化版本,它无需正式安装,只需解压后即可使用,方便快捷。这个绿色版确保了下载过程的安全性,不含任何附加软件,用户可以放心下载。在使用前,建议...

    VC++2010学习版离线安装包.zip

    **VC++2010学习版离线安装包** Visual C++ 2010,简称VC++2010,是由微软公司开发的一款集成开发环境(IDE),它主要用于编写使用C++语言编写的Windows应用程序。这个版本是针对学习者和初学者特别设计的,包含了...

    vc++6.0绿色版

    对于“vc++6.0绿色版”,它可能是一个无需正式安装的版本,只需解压文件到指定目录并执行启动脚本(如sin.bat)即可使用。 2. **启动快捷方式**:`ShortCut.exe` 可能是创建桌面快捷方式的程序,方便用户快速启动...

    vc++2010中文版.zip

    《VC++2010中文版与海康摄像头视频问题解决方案》 在现代信息技术领域,摄像头设备的应用已经无处不在,特别是在安防监控方面,海康摄像头因其稳定性和高清晰度而备受青睐。然而,有时用户可能会遇到无法正常查看...

    VC++6绿色版

    VC++6绿色版是一款经典且深受开发者喜爱的微软Visual C++ 6.0的便携式版本。这个版本不需要安装,可以直接在任何支持的Windows操作系统上运行,方便用户随身携带和快速使用。以下是关于VC++6绿色版的详细知识点: 1...

    VC++ 6.0绿色版(英文版)

    VC++ 6.0绿色版的优点在于便携、占用资源少,且易于在多台电脑间转移,不需要复杂的卸载过程。这对于需要在不同计算机上工作的开发者或者教学环境来说非常方便。 **VC++ 6.0的主要特性** 1. **集成开发环境(IDE)...

    VC++2010学习版密钥 professional key

    在探讨“VC++2010学习版密钥 professional key”的话题时,我们实际上触及了软件许可、开发工具以及合法合规使用软件等多方面的知识。虽然提供的标题和描述较为简短,仅重复提及了“VC++2010学习版密钥 professional...

    VC++6.0免安装 绿色

    **VC++6.0免安装绿色版**是微软公司开发的一款经典的C++集成开发环境(IDE),在教育领域,尤其是高校计算机教学中被广泛使用,因其便捷性和稳定性,也深受考研及计算机等级考试考生的青睐。它是一个无需安装、便携...

    VC++6.0 绿色 免安装版

    【VC++6.0 绿色免安装版】是一款经典的微软Visual C++集成开发环境的便携版本,它无需经过繁琐的安装过程,用户只需将其解压缩到任意位置即可直接运行,大大简化了软件的使用步骤。这个版本的VC++6.0特别适合那些不...

    VC++2010Express简体中文版\学习版

    VC++2010Express简体中文版\学习版,C语言IDE

    VC++2010学习版

    **VC++2010学习版**是一款针对C++编程语言的学习工具,由微软公司开发。作为曾经的官方正版软件,它为初学者和专业开发者提供了集成开发环境(IDE),支持编写、调试和运行C++代码。由于微软已经关闭了该版本的下载...

    VC++绿色版安装程序

    **VC++绿色版安装程序详解** VC++,全称Visual C++,是微软公司开发的一款集成开发环境(IDE),主要用于编写使用C++语言的应用程序。它集成了编译器、调试器以及各种辅助开发工具,使得程序员能够方便地进行...

    VC++6.0中文版(完整绿色版)

    **VC++6.0中文版**是微软公司开发的一款经典的集成开发环境(IDE),全称为Microsoft Visual C++ 6.0。它专为C++编程语言设计,是许多程序员入门和进行Windows应用程序开发的重要工具。VC++6.0在1998年发布,虽然...

    VC++2010简体中文版及安装视频.rar

    "VC++2010简体中文版及安装视频.rar" 包含了VC++2010的简体中文版安装资源和一个安装说明视频。安装步骤通常如下: 1. **解压文件**:首先,你需要将下载的RAR压缩包解压,这通常可以通过WinRAR或其他解压缩软件...

    VC++6.0中文版(完整绿色精简版)

    总之,VC++6.0中文版的完整绿色精简版提供了一个轻量级的C++开发环境,适用于那些需要在Windows 10上进行C++开发或者维护旧项目的人群。尽管存在一些兼容性挑战,但通过适当的配置和技巧,它仍然是一个实用的工具。

    VC++2010 Express 学习版(中文版).rar

    **VC++2010 Express 学习版(中文版)**是微软公司为开发者提供的一款免费的集成开发环境(IDE),特别针对C++编程语言设计。这个版本是为初学者和学生打造的,旨在简化C++编程的学习过程,同时也是计算机等级考试推荐...

    vc++2010学习版(Microsoft Visual C++ 2010 Express)最新版

    vc++2010学习版(Microsoft Visual C++ 2010 Express)最新版,方便强大,中文版,很适合初学C/C++者 vc++2010学习版(MicrosoftVisualC++2010Express)

Global site tag (gtag.js) - Google Analytics