Notification Services와의 COM Interop
모든 Notification Services API는 관리 코드로 개발됩니다. 그러나 많은 Notification Services 클래스는 COM interop을 통해서 뿐만 아니라 비관리 코드에서 사용될 수 있게 개발되었습니다. Notification Services를 기존의 비관리 응용 프로그램에 통합할 경우 구독 관리 인터페이스에 대해 비관리 코드를 계속 사용해야 할 수 있습니다. COM interop 솔루션은 이러한 용도로 제공됩니다.
COM Interop을 지원하지 않는 네임스페이스
다음 Notification Services 네임스페이스의 클래스는 COM interop을 지원하지 않습니다.
- 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 interop에 대해 최소한으로 지원합니다.
-
[!참고] Condition 속성은 COM interop을 지원하지 않습니다.
이러한 클래스는 비관리 코드로 개체를 만들고 초기화하기 위한 기본 생성자 및 Initialize 메서드를 제공합니다. 이러한 클래스에 있는 오버로드된 메서드의 경우 COM 호출자에 가장 포괄적인 오버로드가 제공되며 동일한 기능을 제공하기 위해 메서드 매개 변수는 옵션 항목으로 지정됩니다.
여러 버전의 Notification Services를 설치한 상태에서 COM interop을 사용할 경우 코드는 가장 최근에 설치된 Notification Services 버전의 API를 사용합니다. 이 버전이 Notification Services의 가장 최신 버전일 필요는 없습니다. HKEY_CLASSES_ROOT에 포함된 Program ID가 "Microsoft.SqlServer.NotificationServices.NSInstance" 형식을 가지며 항상 가장 최근에 설치된 버전을 가리키므로 이러한 불일치 상태가 나타날 수 있습니다.
COM interop을 사용하는 방법은 Microsoft MSDN® Library의 COM Interoperability in Visual Basic and Visual C#을 참조하십시오.
참고 항목
개념
Notification Services 아키텍처
Notification Services 프로그래밍 프레임워크
Notification Services 배포 옵션
관련 자료
알림 솔루션 빌드
Notification Services 배포
Notification Services 관리