Поделиться через


Взаимодействие COM со службами Notification Services

Все API-интерфейсы служб Notification Services разработаны в управляемом коде. Однако многие классы служб Notification Services были разработаны для использования из неуправляемого кода, а также посредством взаимодействия COM. При интеграции служб Notification Services в существующее неуправляемое приложение, возможно, потребуется продолжить использовать неуправляемый код для интерфейса управления подписками. Для этой цели предоставляется решение для взаимодействия COM.

Пространства имен, не поддерживающие взаимодействие COM

Классы в следующих пространствах имен служб Notification Services не поддерживают взаимодействие COM.

  • Microsoft.SqlServer.NotificationServices.Rules используется в интерфейсах управления подписками, поддерживающих подписки на основе условий. Это пространство имен находится в сборке Microsoft.SqlServer.NotificationServices.Rules.dll.
  • Microsoft.SqlServer.Management.Nmo может использоваться для программного определения приложений служб Notification Services и для настройки, развертывания и управления экземплярами служб Notification Services. Это пространство имен находится в сборке Microsoft.SqlServer.Smo.dll.

Пространство имен Microsoft.SqlServer.NotificationServices

Следующие классы в пространстве имен Microsoft.SqlServer.NotificationServices имеют, по крайней мере, частичную поддержку взаимодействия COM:

Эти классы предоставляют конструктор по умолчанию и метод Initialize для создания и инициализации объекта в неуправляемом коде. Для перегруженных методов в этом классе наиболее широкая перегрузка предоставляется для вызывающей программы COM, а параметры метода сделаны необязательными для обеспечения эквивалентной функциональности.

Если установлено несколько версий служб Notification Services и используется взаимодействие COM, то пользовательский код использует API-интерфейсы самой последней версии служб Notification Services. Это не обязательно версия служб Notification Services, имеющая наибольший номер. Подобное расхождение может возникнуть, поскольку идентификатор программы (в HKEY_CLASSES_ROOT) имеет форму Microsoft.SqlServer.NotificationServices.NSInstance и всегда указывает на версию, установленную недавно.

Дополнительные сведения об использовании взаимодействия COM см. в статье COM Interoperability in Visual Basic and Visual C# библиотеки Microsoft MSDN®.

См. также

Основные понятия

Архитектура служб Notification Services
Платформа программирования служб Notification Services
Параметры развертывания служб Notification Services

Другие ресурсы

Построение решений на основе служб Notification Services
Развертывание служб Notification Services
Администрирование служб Notification Services

Справка и поддержка

Получение помощи по SQL Server 2005