写于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. Java容器解析系列(11) HashMap 详解

    本篇我们来介绍一个最常用的Map结构--HashMap 关于HashMap,关于其基本原理,网上对其进行讲解的博客非常多,且很多都写的比较好,所以.... 这里直接贴上地址: 关于hash算法: Ha ...

  2. Android教程2020 - RecyclerView使用入门

    本文介绍RecyclerView的使用入门.这里给出一种比较常见的使用方式. Android教程2020 - 系列总览 本文链接 想必读者朋友对列表的表现形式已经不再陌生.手机上有联系人列表,文件列表 ...

  3. widows 10 下解决在npm install python 环境报错的问题

    1.使用管理员打开cmd 2.安装 node-gyp; gyp是一种根据c++源代码编译的工具,node-gyp就是为node编译c++扩展的时候使用的编译工具. npm install -g nod ...

  4. 什么是 Trait

    Trait 是从 PHP 5.4 加入的一种细粒度代码复用的语法.以下是官方手册对 Trait 的描述: Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制.Trait 为了减少单继承 ...

  5. 10个很多人不知道的Redis使用技巧

    前言 Redis 在当前的技术社区里是非常热门的.从来自 Antirez 一个小小的个人项目到成为内存数据存储行业的标准,Redis已经走过了很长的一段路.随之而来的一系列最佳实践,使得大多数人可以正 ...

  6. javaIO笔记

    原创 File类 实例化 new File(path); File.separator 分隔符 创建文件的常规做法

  7. gRPC in ASP.NET Core 3.x -- Protocol Buffer(2)Go语言的例子(下)

    第一篇文章(大约半年前写的):https://www.cnblogs.com/cgzl/p/11246324.html gRPC in ASP.NET Core 3.x -- Protocol Buf ...

  8. Java 继承_Chris

    题目: 编写一个应用程序,创建一个矩形类,类中具有长.宽两个成员变量和求周长的方法.再创建一个矩形类的子类——正方形类,类中定义求面积方法.重写求周长的方法.在主类中,输入一个正方形边长,创建正方形对 ...

  9. [JavaScript]AO对象

    1, 形式参数 2, 局部变量 3, 函数声明表达式

  10. centos系统组件优化

    CentOS Linux在公司服务器上广泛被使用,本文总结了一些常见的加固方法. 基本原则: 最小的权限+最小的服务=最大的安全 操作之前先备份: 为避免配置错误无法登录主机,请始终保持有一个终端已用 ...