MessageQueueInstaller.Install(IDictionary) 方法

定义

执行安装并将消息队列信息写入注册表。 此方法应该由安装工具使用,安装工具将自动调用相应的方法。

public:
 override void Install(System::Collections::IDictionary ^ stateSaver);
public override void Install (System.Collections.IDictionary stateSaver);
override this.Install : System.Collections.IDictionary -> unit
Public Overrides Sub Install (stateSaver As IDictionary)

参数

stateSaver
IDictionary

IDictionary,用于保存执行提交、回滚或卸载操作所需的信息。

注解

方法Install将消息队列信息写入注册表,并将 实例与位于 属性指定Path路径的队列相关联MessageQueue。 如果队列尚不存在, Install 将创建事务性队列。 Install 将新的或现有的队列属性设置为在 中指定的 MessageQueueInstaller那些。 如果队列已存在,则其属性将重置为 的 MessageQueueInstaller那些属性。 如果现有队列不是事务性队列,则会将其删除,然后将其重新创建为事务性队列。

注意

如果需要重新创建队列,队列中的消息将丢失。

通常,你不会从代码中调用 的方法 MessageQueueInstaller ;它们通常仅由 installutil.exe 安装实用工具调用。 实用工具在安装过程中自动调用 Install 方法,以写入与正在安装的消息队列关联的注册表信息。 安装是事务性的,因此,如果在安装过程中任何安装项目组件发生故障,所有以前安装的组件都会回滚到其预安装状态。 这是通过调用每个组件的 方法实现的 Rollback

成功安装与安装项目关联的所有组件后,安装实用工具将提交安装。 Commit 通过将队列设置为适当的初始状态来完成 的安装 MessageQueue 。 如果 属性指定的 Path 队列已存在并且包含消息, Commit 则清除消息。 Commit清除消息的操作无法回滚,而不是 Install清除消息。

应用程序的安装例程使用项目安装程序的 Installer.Context 自动维护有关已安装的组件的信息。 此状态信息作为 stateSaver 参数传递给 Install ,在实用工具安装每个MessageQueueInstaller实例时会不断更新。 通常,代码不需要显式修改此状态信息。

适用于

另请参阅