vc2008开发的程序的发布方式

vc2008开发的程序的发布方式可以有5种方式:

1、 采用静态链接到crt和MFC.

     只要你拥有组成程序的所有源代码,你就可以采用这种方式,这种方式除了程序变大一点,好处多多:

     1)不必重新发布vc2008基础库vcredist_x86.exe(安装到WinSxS).

     2) 不必产生,嵌入manifest.

     3) 也不把vc2008基础库放在程序所在目录.

2、exe(嵌入manifest) + vcredist_x86.exe

     确保程序正确产生并嵌入manifest文件,然后把程序和vcredist_x86.exe一起发布.用户先安装vcredist_x86.exe(安装到WinSxS),然后程序就能正常运行了.

3、exe(嵌入manifest) + 用到的基础库文件放到程序目录(包括库文件本身的manifest文件)

     确保程序正确产生并嵌入manifest文件,然后把程序用到的vc2008基础库相关文件复制到程序所在目录,这种方式适用于用户没有安装过vcredist_x86.exe,一旦用户安装过vcredist_x86.exe,若WinSxS中的相关文件遭到破坏,那么即使在程序目录放上所有用到的vc2008基础库,程序也跑不起来;若WinSxS中的相关文件正常,那么程序目录下的相关文件就是多余的了,删掉它们程序也能正常运行.

4、exe(自行编写manifest) + vcredist_x86.exe

5、exe(自行编写manifest) + 用到的基础库文件放到程序目录(包括库文件本身的manifest文件)


另外,C:\Program Files\Common Files\Merge Modules目录下有相应库的集成模块可以直接集成到安装包中去.


与程序对应的manifest的格式:

<?xml version='1.0' encoding='UTF-8'standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1'manifestVersion='1.0'>
<trustInfoxmlns="urn:schemas-microsoft-com:asm.v3">
   <security>
     <requestedPrivileges>
       <requestedExecutionLevel level='asInvoker'uiAccess='false' />
     </requestedPrivileges>
   </security>
</trustInfo>

<dependency>                               // VC9 的CRT, 基本上所有用vc2008的程序都需要下面一段
   <dependentAssembly>
     <assemblyIdentity type='win32'name='Microsoft.VC90.CRT' version='9.0.21022.8'processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'/>
   </dependentAssembly>
</dependency>

                                             //用到 VC9的MFC库,需要加下面一段
<dependency>
   <dependentAssembly>
     <assemblyIdentity type='win32'name='Microsoft.VC90.MFC' version='9.0.21022.8'processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'/>
   </dependentAssembly>
</dependency>

<dependency>                               //想使用windows xp 的6.0版本的通用控件,加需要下面一段
   <dependentAssembly>
     <assemblyIdentity type='win32'name='Microsoft.Windows.Common-Controls' version='6.0.0.0'processorArchitecture='x86' publicKeyToken='6595b64144ccf1df'language='*' />
   </dependentAssembly>
</dependency>

</assembly>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值