写于2015-3-21 16:59 由qq空间转过来,格式有点乱

    之前遇到一个问题,c++\cli的程序部署在服务器上面,程序运行后没有反应就退出了,日志管理器中记录两个错误信息分别如下:

    1> Faulting application 5gameserver_1.exe, version 0.0.0.0, stamp 5502842b, faulting module kernel32.dll, version 5.2.3790.5295, stamp 52f35537, debug? 0, fault address 0x0000bf93.
    2> Application: 5GameServer_1.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.TypeInitializationException
    Stack:
    首先可以确定的程序在开发环境中确实运行没有问题,经验告诉这是少了c++运行库,网上搜索一堆c++运行库,我的开发环境用的vs2010,但是c++\cli比较特殊,可以指定vs2010编译,否则用vs2012默认的库,xp级别的系统就没办法运行了,网上找了vc++ 2010 Redistributable安装,结果很失望问题并没能解决..由于当时想着先运行起来,服务器网络又好,于是乎一个惊人的做法搞定了,不错下载2.5G的安装包,在服务器安装了一个vs2010.不用说程序很顺利的跑了起来,一切正常.
    今天再次部署这个程序,由于以后可能频繁的换服务器,这样下载安装vs2010,肯定是不可行的方案,那为什么安装了vc++ 2010运行库不行,而安装vs2010就可以了? 那就来看看vs2010安装到底多了什么? 我们在vs2010自定义安装的子级列表中把勾都去掉,发现vs2010先安装vc9.0 runtime,然后在是vc10.runtime,一边安装一边测试中发现vc10.runtime安装过了后,程序就可以正常运行了...几经排除,确认需要的就是vc10.runtime.
    但问题是网上搜索两个小时都未能找到vc10 runtime的单独安装程序,搜到的都是redistributable的运行库,当然中间在vs2010安装包中直接找到了这个runtime,可是这个.msi要求用setup.exe进行安装,也就是说须要从vs安装整起... 后来想着怎么精简这个安装包,终于在崩溃中找到了解药. "手工安装Visual Studio 2010" 
    http://blog.csdn.net/aasmfox/article/details/8631733
    最后的解决方案即把vs2010安装包中的runtime复制出来,用一个cmd命令弄个bat放在vc_runtime_x86.msi一起进行安装即可
    vc_runtime_x86.msi NVSUI=1
    对,就是加一个 NVSUI的参数
    虽然最后的方法很简单,花了这么长时间,但总算找到runtime,以后在有类似的部署就不在有问题了~ 

抽取vs2010安装包中vc++ runtime的更多相关文章

  1. InstallShield安装包中集成第三方安装包的方案选择

    原文:InstallShield安装包中集成第三方安装包的方案选择[转]   我们在制作安装包时,有些情况下会涉及第三方安装的集成,这里将讨论如何调用安装第三方包,以及需要注意的事项. 第三方安装包的 ...

  2. 如何使用AdvancedInstaller在安装包中运行一个.bat文件

    原文:如何使用AdvancedInstaller在安装包中运行一个.bat文件 1,  首先要保证你的Files and Folders模块下的Application Folder文件夹下包含你要运行 ...

  3. 向安装包中添加设备 UDID. 蒲公英内测

    向安装包中添加设备 UDID 前言 注:本文适用于只有苹果个人开发者账号.公司开发者账号.或教育开发者账号的 iOS 开发者. 对于没有企业开发者账号(299$)的开发者来说,要想使用蒲公英将自己的应 ...

  4. 打包文件到APK安装包中

    打包文件到APK安装包中 目的:将配置文件或SQLITE打包进APK中 1.首先,打开菜单 Project - Deployment 2.点击添加按钮,选择要添加的文件(文件最好放在工程目录中,这样, ...

  5. VS2010安装包制作

    最近对软件安装包制作研究了一下,下面记录了一种比较简单,不用写代码的方法. 1.New Project---->Other Project Types ---->Visual Studio ...

  6. VS2010安装包制作全过程图解

    项目的第一个版本出来了,要做个安装包,很久没做过已经有些淡忘了,网上差了差资料,写了一个,总结下,可能还不是很完善,仅作参考. 1.首先在打开 VS2010    >新建>项目 2.创建一 ...

  7. InstallShield安装包中集成第三方安装包的方案选择[转]

      我们在制作安装包时,有些情况下会涉及第三方安装的集成,这里将讨论如何调用安装第三方包,以及需要注意的事项. 第三方安装包的介质类型有很多,主要有:单独的一个Setup.exe,单独的一个msi包, ...

  8. Linux软件安装包中devel与非devel包之间的区别

    带devel(develop)的包,俗称开发包.功能上与普通包相同,但体积更大使用rpm -qi看看这两类包的区别: # rpm -qi glibc-devel-2.12-1.149.el6.x86_ ...

  9. vs installer 将.net framework 集成到安装包中

    Missing .NET Framework 4.0 in Visual Studio 2017 Prerequisites whenhttps://stackoverflow.com/questio ...

随机推荐

  1. Linux 常用工具sysstat之sar

    sysstat包 iostat.sar.sa1和sa2命令都是sysstat包的一部分.它是Linux包含的性能监视工具集合: sar:收集.报告或存储信息(CPU.内存.磁盘.中断.网卡.TTY.内 ...

  2. java 编程小知识点

    --------------------------------- 时间不多了,抓紧做自己喜欢的事情 1. 使用位运算 & 来判断一个数是否是奇数.偶数的速度很快 (a & 1 ) = ...

  3. 【转】spring framework 5以前体系结构及内部各模块jar之间的maven依赖关系

    作者:凌承一  出处:http://www.cnblogs.com/ywlaker/  很多人都在用spring开发java项目,但是配置maven依赖的时候并不能明确要配置哪些spring的jar, ...

  4. NLP(十九)首次使用BERT的可视化指导

      本文(部分内容)翻译自文章A Visual Guide to Using BERT for the First Time,其作者为Jay Alammar,访问网址为:http://jalammar ...

  5. Codeforces 1248C Ivan the Fool and the Probability Theory(推公式)

    题意 一个n*m的网格图,每个格子可以染黑色.白色,问你每个格子最多有一个相邻颜色相同的方案数 n,m<=1e5 思路 我们先处理\(1 \times m\)的情况 设\(f[i][j]\)为前 ...

  6. HDU 1251 统计难题 (Trie树模板题)

    题目链接:点击打开链接 Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单 ...

  7. SSH: ssh隧道

    简介 Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境.SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接. ...

  8. 编译生成protobuf的jar包

    编译生成protobuf的jar包 配置maven 安装maven,并修改maven源为阿里云 下载maven wget http://mirror.bit.edu.cn/apache/maven/m ...

  9. 并发编程的基石——AQS类

    本博客系列是学习并发编程过程中的记录总结.由于文章比较多,写的时间也比较散,所以我整理了个目录贴(传送门),方便查阅. 并发编程系列博客传送门 本文参考了[Java多线程进阶(六)-- J.U.C之l ...

  10. javascript js全部的 全局属性 和 方法-window

    window method: open(URL,窗口名称,窗口风格)//打开一个新的窗口,并在窗口中装载指定URL地址的网页 close()//close方法用于自动关闭浏览器窗口 alert(提示字 ...