处理通知

网络配置子系统发送通知,以按以下间隔通知对象:

  • 在网络安装期间- 包括操作系统安装、在以前不支持网络的操作系统上安装网络功能、升级操作系统或卸载网络功能

  • 在网络配置期间- 包括添加、删除、启用和禁用网络组件、更改网络组件以及更改网络配置子系统将网络组件绑定在一起的方式

  • 在应用程序指示子系统显示拥有通知对象的网络组件的属性之后

若要处理通知,通知对象将执行以下常规操作序列:

  1. 加载 notify 对象时,它会读取系统注册表,以在其内部数据结构中形成当前网络配置的模型。

  2. 在网络配置子系统向通知对象发送有关通知对象之前请求的网络更改的通知后,通知对象会修改其内部数据结构以跟踪这些更改。

  3. 当网络配置子系统完成向 notify 对象发送通知时,子系统将调用 notify 对象的 INetCfgComponentControl::ApplyRegistryChanges 方法,以将更改提交到系统注册表。

注意上述序列中提到的通知还可以包括对通知对象的 INetCfgComponentControl::CancelChanges 方法的调用,在这种情况下,通知对象应还原回原始网络配置。 在修改原始网络配置之前,notify 对象应创建配置的两个副本。 通知对象可以修改一个副本以包含更改,并将另一个副本保留为原始条件。 在还原回原始网络配置时,notify 对象可以使用未修改的副本。