安装程序工具 (Installutil.exe)
安装程序工具使您得以通过在执行指定程序集中的安装程序组件来安装和卸载服务器资源。此工具与 System.Configuration.Install 命名空间中的类一起工作。
installutil [/uninstall][option [...]]assemblyname ]
[option [...]]assemblyname
| 参数 | 说明 |
|---|---|
|
assemblyname |
在其中执行安装程序组件的程序集的名称。 |
| 选项 | 说明 |
|---|---|
|
/h[elp] |
显示该工具的命令语法和选项。 |
|
/help assemblypath |
显示指定程序集中的个别安装程序所识别的任何附加选项。 |
|
/? |
显示该工具的命令语法和选项。 |
|
/? assemblypath |
显示指定程序集中的个别安装程序所识别的任何附加选项。 |
|
/LogFile=[filename] |
指定在其中记录安装进度的日志文件的名称。默认文件名是 assemblyname.InstallLog。 |
|
/AssemblyNameassemblyName [,Version=major.minor.build.revision] [,Culture=locale] [,PublicKeyToken=publicKeyToken]] |
指定程序集的名称。必须使用程序集的版本、区域性和公钥标记完全限定程序集名称。完全限定名必须用引号括起。 例如,“myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=2.0.0.0”是完全限定的程序集名称。 |
|
/LogToConsole={true|false} |
如果为 true,则将输出显示到控制台。如果为 false(默认值),则取消将输出显示到控制台。 |
|
/ShowCallStack |
如果在安装过程中的任何时候出现异常,则将调用堆栈打印到日志。 |
|
/u[ninstall] |
卸载程序集。与其他选项不同,/u 应用于所有程序集,不论该选项出现在命令行的什么位置。 |
从 .NET Framework 2.0 版开始,32 位版本的公共语言运行库 (CLR) 仍然仅随 32 位版本的安装程序工具一起提供,但 64 位版本的 CLR 同时随 32 位和 64 位版本的安全程序工具一起提供。当使用 64 位 CLR 时,使用 32 位安装程序工具可安装 32 位程序集,使用 64 位安装程序工具可安装 64 位和 Microsoft 中间语言程序集。在其他情况下,这两种版本的安装程序工具的行为相同。
Microsoft .NET Framework 应用程序由传统的程序文件和关联资源组成,如必须在部署应用程序时创建的消息队列、事件日志和性能计数器。安装应用程序时可以使用程序集的安装程序组件创建这些资源,而在卸载应用程序时可以使用这些组件删除这些资源。Installutil.exe 检测并执行这些安装程序组件。
可以在同一个命令行上指定多个程序集。出现在程序集名称前面的任何选项应用于该程序集的安装。为某个程序集指定的选项应用于后面的任何程序集,除非该选项与新程序集名称一起指定。
如果对某个程序集运行 Installutil.exe 但不指定任何选项,则 Installutil.exe 将下面三个文件放到该程序集的目录中:
InstallUtil.InstallLog
包含安装进度的常规说明。
assemblyname.InstallLog
包含安装过程的提交阶段特定的信息。有关提交阶段的更多信息,请参见 Installer.Commit 方法。
assemblyname.InstallState
包含用于卸载该程序集的数据。
Installutil.exe 使用反射检查指定的程序集并查找将 RunInstallerAttribute 设置为 true 的所有 Installer 类型。然后此工具在 Installer 类型的每个实例上执行 Install 方法或 Uninstall 方法。Installutil.exe 以事务性方式执行安装;如果有一个程序集未能安装,则 Installutil.exe 回滚其他所有程序集的安装。卸载不是事务性的。
Installutil.exe 无法安装或卸载延迟签名的程序集,但可以安装或卸载具有强名称的程序集。
注意,不能使用 Installutil.exe 部署用 C++ 创建的 Windows 服务。Installutil.exe 无法识别由 C++ 编译器产生的嵌入的本机代码。如果试图使用 Installutil.exe 部署 C++ Windows 服务,则会引发异常(如 BadImageFormatException)。若要处理这种情况,请将服务代码移动到 C++ 模块。然后,用 C# 或 Visual Basic 来编写安装程序对象。
下列命令显示命令语法和选项的说明。
installutil
下面的命令执行 myAssembly.exe 程序集中的安装程序组件。
installutil myAssembly.exe
下面的命令使用 /AssemblyName 开关和完全限定名执行程序集中的安装程序组件。
installutil /AssemblyName "myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=2.0.0.0"
下面的命令执行 myAssembly.exe 程序集中的卸载程序组件。
installutil /u myAssembly.exe
下面的命令执行 myAssembly.exe 程序集中的安装程序并指定将进度信息写入 myLog.InstallLog 中。
installutil /LogFile=myLog.InstallLog myAssembly.exe
下面的命令将 myAssembly.exe 的安装进度写入 myLog.InstallLog 中,并将 myTestAssembly.exe 的进度写入 myTestLog.InstallLog. 中。
installutil /LogFile=myLog.InstallLog myAssembly.exe /LogFile = myTestLog.InstallLog myTestAssembly.exe
安装程序工具 (Installutil.exe)的更多相关文章
- 安装程序工具 (Installutil.exe)22
网址:https://msdn.microsoft.com/zh-cn/library/50614e95(VS.80).aspx 安装程序工具 (Installutil.exe) .NET Fram ...
- Installutil.exe 注册exe
进入到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe目录下,然后输入Installutil.exe 文件路径实现注册 I ...
- Installutil.exe的位置和路径
安装程序工具使您得以通过在执行指定程序集中的安装程序组件来安装和卸载服务器资源.此工具与 System.Configuration.Install命名空间中的类一起工作.安转的位置和路径在:C:\WI ...
- 无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer、Windows服务器管理工具或NET START命令启动它
无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer.Windows服务器管理工具或NET START命令启动它 1. ...
- 制作Java安装程序
这个工具利用 ANT 来制作在 Windows, MacOS X, Unix 平台上可执行的文件,比如 exe,zip,jar.ROXES ANT Tasks 基于 GPL 发布. http://ww ...
- InstallUtil.exe版本引起安装windows services 服务遇到的问题,System.BadImageFormatException
原文:把程序安装成windows服务的过程及遇到的问题 做好了定时任务的程序,要把它放在服务器上,作为windows服务运行,也就是说,退出登录,用户注销后程序任然在后台运行. 将exe程序发布为服务 ...
- 批处理安装Windows服务,提示"InstallUtil.exe"不是内部命令也不是外部命令解决方式
今天在测试一个C#写的windows服务的时候,在用bat进行调用cmd安装的时候, cd C:\Windows\Microsoft.NET\Framework\v2.0.50727 InstallU ...
- win7下nsis打包exe安装程序教程
下载软件包: NSIS中文版 :https://pan.baidu.com/s/1mitSQU0 装好之后会出现两个软件:Nullsoft Install System 和 VNISEdit 编译环境 ...
- Visual Studio 2017 - Windows应用程序打包成exe文件(1)- 工具简单总结
最近有对一个Windows应用程序少许维护和修改.修改之后要发布新的exe安装文件,打包exe文件时,遇到了很头疼的问题,还好最后解决了,记录一下. Visual Studio版本:Visual St ...
随机推荐
- Codeforces Round #275 (Div. 2) B. Friends and Presents 二分+数学
8493833 2014-10-31 08:41:26 njczy2010 B - Friends and Presents G ...
- 使用selenium抓取淘宝的商品信息
淘宝的页面大量使用了js加载数据,所以采用selenium来进行爬取更为简单,selenum作为一个测试工具,主要配合无窗口浏览器phantomjs来使用. import re from seleni ...
- [转发]Android 系统稳定性 - ANR(二)
文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任. 很久之前写的了,留着有点浪费,共享之.编写者:李文栋P.S. OpenOffice粘贴过来后格式有些混乱. http://rayleeya ...
- 在 VirtualBox 5.0 系列中让虚拟机支持 USB 3.0 必须开启 APIC
VirtualBox 5.0 系列正式支持 USB 3.0,能够在宿主机支持 USB 3.0 的情况下,让虚拟机也选择具备 USB 3.0 的功能.但是经过多方试验,发现必须在 VirtualBox ...
- Codeforces Gym 100418K Cards 组合数学
CardsTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/view.action? ...
- Java面向对象练习题
1.猜数字游戏: 一个类A有两个成员变量v.num,v有一个初值100. 定义一个方法guess,对A类的成员变量v,用num进行猜. 如果大了则提示大了,小了则提示小了.等于则提示猜测成功. 在ma ...
- ACM用到的算法。先做个笔记,记一下
ACM 所有算法 数据结构 栈,队列,链表 哈希表,哈希数组 堆,优先队列 双端队列 可并堆 左偏堆 二叉查找树 Treap 伸展树 并查集 集合计数问题 二分图的识别 平衡二叉树 二叉排序树 线段树 ...
- Java中循环与选择语句
public class Ifelse{ public static void main(String [] args){ int score=98; if(score>=90&& ...
- Mac电脑解压文件unrar用密码问题解决
下载了一个rar文件,有密码的,你懂的. 但是在mac上面,用unrar解压,只能解出空文件:用izip解压,直接停在那里不动. 只好上网搜索.找到了办法. 用brew 安装了命令行版本的 unrar ...
- LSA、LDA
Latent semantic analysis (LSA) is a technique in natural language processing, in particular distrib ...