在制作C#程序安装包时,需要安装.Net Framework和Visual C++运行库文件。若采用一般安装模式会弹出安装界面,让用户点击确定进行安装,若用户选择出错会导致程序无法正常运行。给软件的运维带来不小的麻烦,这里记录了制作安装包对.Net Framework和Visual C++库进行后台静默安装,减少用户操作步骤,从而增加软件安装的成功率。

1. 设置安装包以管理员身份运行

若不是以管理员身份运行,在静默安装.Net Framework和Visual C++时会弹出授权提示框,勾选后则只需在启动安装程序时候提示一次;

2. 设置依赖程序位必须安装项目

取消选项“Requirements -> Prerequisites -> Properties -> Options -> Continue with main installation even if the prerequisite is not installed”,设置后不安装.Net Framework将不能继续安装。Visual C++中也需要进行同样的设置;

3. 设置.Net Framework静默安装参数

修改设置“Requirements -> Prerequisites -> Setup Files -> Install Command Lines -> Full UI”,在输入框中添加静默安装参数(如下图所示)

/Q /NORESTART /lcid 1033

.Net Framework静默安装的完整命令

dotNetFx40_Full_x86_x64.exe /Q /NORESTART /lcid 1033

4. 设置Visual C++静默安装参数

修改设置“Requirements -> Prerequisites -> Setup Files -> Install Command Lines -> Full UI”,在输入框中添加静默安装参数(如下图所示)

/install /quiet /norestart /log %TEMP%\vcredist_2013_x86.log

对于不同版本都Visual C++库静默安装方法有所不同,每个版本的 VC++ 库都会有 x86 x64 ia64 等版本,本文将使用 x86 版本作为例子,而对应的其他版本安装方法可参照对应版本。

# Visual C++ 2017 x86
vc_redist.x86.exe /install /quiet /log "%temp%\Install_vc_redist_2017_x86.log"
# Visual C++ 2017 x64
vc_redist.x64.exe /install /quiet /log "%temp%\Install_vc_redist_2017_x64.log"
# Visual C++ 2015
vc_redist.x86.exe /q /norestart
# Visual C++ 2013
vcredist_x86.exe /install /quiet /norestart /log %TEMP%\vcredist_2013_x86.log
# Visual C++ 2010
vcredist_x86.exe /q /norestart
# Visual C++ 2008
vcredist_x86.exe /q
# Visual C++ 2005 这里的 Visual C++ 2005 也就是 Visual C++ 8.0 版本,静默安装方法请看下面
vcredist_x86.exe /q:a /c:"msiexec /i vcredist.msi /qn /l*v %temp%\vcredist_x86.log"

Visual C++其他命令备忘:

# Visual C++ 2017 卸载
# 如果找不到 vc_redist.x86.exe 可以尝试从缓存文件找到
# x86 : "C:\ProgramData\Package Cache\{2019b6a0-8533-4a04-ac0e-b2c10bdb9841}\VC_redist.x86.exe" /uninstall /quiet
# x64 : "C:\ProgramData\Package Cache\{80586c77-db42-44bb-bfc8-7aebbb220c00}\VC_redist.x64.exe" /uninstall /quiet
vc_redist.x86.exe /uninstall /quiet /log "%temp%\Uninstall_vc_redist_2017_x86.log"
# Visual C++ 2010 卸载
vcredist_x86.exe /q /uninstall /norestart
# Visual C++ 2008 普通的卸载
vcredist_x86.exe /qb
# Visual C++ 2008 不带取消的卸载
vcredist_x86.exe /qb!
# Visual C++ 2005 卸载
vcredist_x86.exe /q:a /c:"msiexec /i vcredist.msi /qb! /l*v %temp%\vcredist_x86.log"

打完收工。

Advenced Installer制作C#程序安装包过程.Net和Visual C++采用静默安装配置说明相关推荐

  1. Advanced Installer 制作.NetWeb部署安装包

    Advanced Installer 制作.NetWeb部署安装包 原文:Advanced Installer 制作.NetWeb部署安装包 因为是.Net的Web应用程序,所以想用Advanced ...

  2. 制作C++程序安装包

    参考: 1.http://wenku.baidu.com/link?url=AAdvye_kkxaaVicMA3IRtaSW6Ig9bALZHF1PjX8j_mlxZWkkOIzywn0wiyz7bY ...

  3. 制作java程序安装包

    将java变成安装包一般需要以下几步: + 1) 将java程序打包成jar格式 + 2) 将jar格式制作成exe + 3) 将exe制成安装包 下面我们一步步介绍各个步骤用到的工具以及注意点 1. ...

  4. Inno Setup制作应用程序安装包

    我最近写了一个MFC应用程序,想发给其他的小伙伴玩一玩,直接发了个exe文件过去,结果发现小伙伴那边打不开.原来这个exe文件虽然是MFC静态编译的,但是还依赖了其他几个.dll文件,需要把这几个dl ...

  5. C#软件winform程序安装包制作

    转自:http://jingyan.baidu.com/article/b2c186c8e26f2ac46ef6ff3a.html 使用vs2010 winform程序开发的软件的人比较多,程序的开发 ...

  6. Windows程序安装包制作——EasySetup

    0 前言 这里略去关于EasySetup的下载和安装,直接描述使用EasySetup创建程序安装包的过程.下面的步骤都已经假设您您已经安装并启动了EasySetup,而且已经准备好用于制作安装包的程序 ...

  7. Visual Studio 2010制作程序安装包

    所谓程序安装包,可以简单理解为一种压缩包,即将你自己所写程序所需要的所有资源,如动态链接库dll.图标文件ico,甚至是调用的第三方可执行程序exe,打包并压缩.当用户运行该安装包时,再将相应的资源解 ...

  8. C#软件winform程序安装包制作及卸载程序制作

    使用vs2010 winform程序开发的软件的人比较多,程序的开发是为了在不同的人不同的机器使用,为了使不同的机器能使用该软件就需要在制作程序安装包,安装包里必须包含该软件运行所选的所有环境,下面就 ...

  9. linux程序安装包怎么用,制作Linux下程序安装包——使用脚本打包bin、run等安装包...

    制作简单的安装包的时候可以简单的用cat命令连接两个文件,然后头部是脚本文件,执行的时候把下面的文件分解出来就行了.一般这个后部分的文件是个压缩 包,那样,就能够打包很多文件了,在脚本中解压出来即可. ...

最新文章

  1. 大学教师辞职创业,已向高校捐赠超10亿元!多以个人名义……
  2. php memcached 扩展安装目录,php安装memcached扩展
  3. Python自动化开发学习2
  4. 20161023 NOIP 模拟赛 T1 解题报告
  5. [体感游戏]关于体感游戏的一些思考(三) --- 射击
  6. stream distinct去重_再来看看Java的新特性——Stream流
  7. Ansible批量管理与维护
  8. 九度OJ 1434 今年暑假不AC
  9. python访问web网页_python访问web的利器:urllib2
  10. 阿里巴巴中文站架构设计实践(何崚)图书
  11. javax.mail.MessagingException: 553 authentication is required
  12. [redmine问题回复】redmine安装好后,在什么地方增加cvs配置库CVSROOT
  13. vue组件化学习第一天
  14. linux进程间通信-概述
  15. 10款Mac上程序员装机必备的开发工具推荐和下载
  16. matlab仿真高尔顿正态分布源码,杂谈 | 正态分布为什么如此常见
  17. c语言里什么叫double,c语言double什么意思
  18. python如何在图片上添加文字_Python在图片中添加文字的两种方法
  19. 干货 | 区块链项目估值的逻辑和误区
  20. 泛型类、泛型方法的使用与理解

热门文章

  1. pandas生成excel多级表头
  2. 企业门户应用整合中单点登录(SSO)的技术实现与应用
  3. 零差云控(zeroerr)erob80 I型开箱
  4. 是非人生 — 一个菜鸟程序员的5年职场路 第13节
  5. mybatis查询时间段sql语句和DATE_FORMAT
  6. 拼多多新店铺怎么运营?
  7. WBS工作分解结构法,如何细分你的工作
  8. 【次小生成树】4.秘密的牛奶运输
  9. 《下班后开始新的一天》阅读笔记
  10. php页面导入excel表格,php页面导入excel表格数据:php导入excel 怎么获取excel表格数据...