Установка, обновление и удаление компонента
Когда подсистема конфигурации сети устанавливает, обновляет или удаляет сетевой компонент, подсистема также вызывает объект уведомления компонента для завершения установки, обновления и удаления. Объект уведомления компонента можно реализовать для выполнения операций, которые может потребоваться компоненту. Например:
Объект уведомления для мультиплексера для виртуальной локальной сети можно реализовать таким образом, что при установке мультиплексера объект уведомления установит виртуальные адаптеры, к которым привязывается протокол мультиплексера.
Чтобы установить виртуальный адаптер, объект notify вызывает метод INetCfgClassSetup::Install конфигурации сети. В этом вызове объект уведомления передает идентификатор виртуального адаптера для установки. Объект уведомления может вызывать INetCfgClassSetup::Install, например, из метода INetCfgComponentNotifyBinding::NotifyBindingPath или INetCfgComponentPropertyUi::ApplyProperties.
Чтобы завершить установку виртуального адаптера, операционная система требует INF-файла для виртуального адаптера. Чтобы убедиться, что этот INF-файл можно найти, его необходимо скопировать в операционную систему при установке мультиплексера. Дополнительные сведения см. в разделе "Копирование INFs". В этом разделе указывается, что директива CopyINF или вызов функции SetupCopyOEMInf со установщиком или приложением установки можно использовать для копирования INF-файлов в INF-каталог целевой системы. Однако если INF-файл для мультиплексера (исходная INF) копируется с помощью SetupCopyOEMInf, ТО INF-файл виртуального адаптера также должен быть скопирован с помощью SetupCopyOEMInf, так как операционная система обрабатывает директиву CopyINF только в том случае, если исходный INF еще не находится в каталоге INF.
Объект уведомления мультиплексера можно реализовать таким образом, чтобы при удалении мультиплексера подсистема удалила все виртуальные адаптеры. Чтобы удалить виртуальный адаптер, объект notify вызывает метод INetCfgClassSetup::D eInstall конфигурации сети. В этом вызове объект уведомления передает указатель на интерфейс INetCfgComponent виртуального адаптера. Объект уведомления может вызывать INetCfgClassSetup::D eInstall, например из метода INetCfgComponentNotifyBinding::NotifyBindingPath или INetCfgComponentPropertyUi::ApplyProperties .
Объект уведомления компонента можно реализовать таким образом, чтобы при обновлении компонента подсистема изменила порядок пути привязки компонента. Чтобы изменить этот порядок, метод iNetCfgComponentSetup::Upgrade вызывает метод INetCfgComponentBindings::MoveBefore или методы INetCfgComponentBindings::MoveAfter.