Installutil.exe(安装程序工具)
安装程序工具是一个命令行实用工具,你可以通过此工具执行指定程序集中的安装程序组件,从而安装和卸载服务器资源。 此工具与 System.Configuration.Install 命名空间中的类配合使用。
此工具会自动随 Visual Studio 一起安装。 若要运行该工具,请使用 Visual Studio 开发人员命令提示或 Visual Studio 开发人员 PowerShell。
在命令提示符处,键入以下内容:
语法installutil [/u[ninstall]] [options] assembly [[options] assembly] ...参数参数说明assembly要在其中执行安装程序组件的程序集的文件名称。 如果你要通过使用 /AssemblyName 选项指定程序集的强名称,则忽略此参数。选项选项描述/h[elp]- 或 -
/?
显示该工具的命令语法和选项。/help assembly-或-
/? assembly
显示由指定的程序集中的个别安装程序识别的其他选项,以及 InstallUtil.exe 的命令语法和选项。 此选项将各安装程序组件的 Installer.HelpText 属性返回的文本添加到 InstallUtil.exe 的帮助文本。 例如,如果 ServiceProcessInstaller.Account 为 User,则 /username 和 /password 选项可用。/AssemblyName "assemblyName,Version=major.minor.build.revision
,Culture=locale
,PublicKeyToken=publicKeyToken"
指定必须在全局程序集缓存中注册的程序集的强名称。 必须使用程序集的版本、区域性和公钥标记完全限定程序集名称。 完全限定名必须用引号括起。例如,“myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=4.0.0.0”是完全限定的程序集名称。
/InstallStateDir=[ directoryName]指定 .InstallState 文件的目录,其中包含用来卸载程序集的数据。 默认为包含程序集的目录。/LogFile=[filename]指定在其中记录安装进度的日志文件的名称。 默认情况下,如果省略 /LogFile 选项,则会创建名为 assemblyname.InstallLog 的日志文件。 如果省略 filename,则不生成任何日志文件。/LogToConsole={true|false}如果为 true,则会将输出显示到控制台。 如果为 false(默认值),则取消将输出显示到控制台。/ShowCallStack如果在安装过程中的任何时候出现异常,则将调用堆栈输出到日志文件。/u[ninstall]卸载指定的程序集。 与其他选项不同,/u 选项不论出现在命令行的什么位置,都将应用于所有程序集。其他安装程序选项程序集中使用的独立安装程序可识别除选项部分列出的选项之外的选项。 要了解有关这些选项的信息,可以在命令行中运行带有程序集路径的 InstallUtil.exe 以及 /? 或 /help 选项。 要指定这些选项,请将它们与 InstallUtil.exe 可识别的选项一起包含在命令行中。
备注
由单独的安装程序组件所支持的选项的帮助文本由 Installer.HelpText 属性返回。 已经在命令行中输入的单个选项可通过编程方式从 Installer.Context 属性进行访问。
所有选项和命令行参数都将写入到安装日志文件中。 但是,如果你使用 /Password 参数(某些安装程序组件可识别这些参数),密码信息将被替换为八个星号 (*),且不会出现在日志文件中。
重要
在某些情况下,传递给安装程序的参数可能包含敏感信息或个人身份信息,默认情况下,此信息将写入到纯文本日志文件中。 要阻止此行为,可以通过在命令行中的 Installutil.exe 后指定 /LogFile=(没有 filename 参数)来禁止日志文件。
备注.NET Framework 应用程序由传统的程序文件和关联资源组成,如必须在部署应用程序时创建的消息队列、事件日志和性能计数器。 安装应用程序时可以使用程序集的安装程序组件创建这些资源,而在卸载应用程序时可以使用这些组件删除这些资源。 Installutil.exe 检测并执行这些安装程序组件。
可以在同一个命令行中指定多个程序集。 出现在一个程序集名称前面的任何选项都将应用于该程序集的安装。 除了 /u 和 /AssemblyName 之外,选项可以是累积的,但也是可重写的。 就是说,为一个程序集指定的选项适用于所有后续程序集,除非为该选项指定新值。
如果对某个程序集运行 Installutil.exe 但不指定任何选项,则 Installutil.exe 会将下面三个文件放到该程序集的目录中:
InstallUtil.InstallLog - 包含安装进度的常规说明。
assemblyname.InstallLog - 包含特定于安装过程的提交阶段的信息。 关于提交阶段的