如何使用复制代理配置文件(RMO 编程)

创建代理作业时,复制代理配置文件用于定义默认值。 每个代理均有一个默认配置文件,某些代理还有附加的预定义配置文件。 您可以使用复制管理对象 (RMO) 来创建用户定义的配置文件。 有关配置文件的信息,请参阅复制代理配置文件

创建一个新的代理配置文件

  1. 使用 ServerConnection 类的实例创建与分发服务器的连接。

  2. 创建 AgentProfile 类的实例。

  3. 设置对象的下列属性:

  4. 调用 Create 方法以在服务器上创建配置文件。

  5. 在服务器上存在此配置文件后,可以通过添加、删除或更改复制代理参数的值来对该配置文件进行自定义。

  6. 若要将此配置文件分配给现有的复制代理作业,请调用 AssignToAgent 方法。 为 distributionDBName 传递分发数据库的名称并为 agentID 传递作业 ID。

修改现有代理配置文件

  1. 使用 ServerConnection 类的实例创建与分发服务器的连接。

  2. 创建 ReplicationServer 类的实例。 传递步骤 1 中创建的 ServerConnection 对象。

  3. 调用 LoadProperties 方法。 如果此方法返回 false,请验证分发服务器是否存在。

  4. 调用 EnumAgentProfiles 方法。 传递一个 AgentType 值以将返回的配置文件缩小至指定类型的复制代理。

  5. 从返回的 ArrayList 中获取所需的 AgentProfile 对象,其中此对象的 Name 属性与配置文件名相匹配。

  6. 调用 AgentProfile 的以下方法之一更改配置文件:

    • AddParameter - 向此配置文件添加支持的参数,其中 name 为复制代理参数的名称,value 为指定的值。 若要枚举给定代理类型的所有支持的代理参数,请调用 EnumParameterInfo 方法。 此方法返回表示所有支持参数的一个 AgentProfileParameterInfo 对象的 ArrayList

    • RemoveParameter - 删除配置文件中的某个现有参数,其中 name 为复制代理参数的名称。 若要枚举为配置文件定义的所有当前代理参数,请调用 EnumParameters 方法。 此方法返回一个 AgentProfileParameter 对象的 ArrayList,表示此配置文件的现有参数。

    • ChangeParameter - 更改配置文件中现有参数的设置,其中 name 为代理参数的名称,newValue 为更改参数时的目标值。 若要枚举为配置文件定义的所有当前代理参数,请调用 EnumParameters 方法。 此方法返回一个 AgentProfileParameter 对象的 ArrayList,表示此配置文件的现有参数。 若要枚举所有支持的代理参数设置,请调用 EnumParameterInfo 方法。 此方法返回 AgentProfileParameterInfo 对象的 ArrayList,表示所有参数的支持值。

删除代理配置文件

  1. 使用 ServerConnection 类的实例创建与分发服务器的连接。

  2. 创建 AgentProfile 类的实例。 将 Name 设置为配置文件的名称,将 ConnectionContext 设置为从步骤 1 中获得的 ServerConnection

  3. 调用 LoadProperties 方法。 如果此方法返回 false,则指定的名称不正确或服务器上不存在该配置文件。

  4. 验证 Type 属性是否设置为指示某个客户配置文件的 User。 您不应该删除 Type 的值为 System 的配置文件。

  5. 调用 Remove 方法从服务器中删除此对象表示的用户定义的配置文件。