COM Interop avec Notification Services
Toutes les API Notification Services sont développées en code managé. Toutefois, de nombreuses classes Notification Services ont été développées pour être aussi utilisées en code non managé et avec COM Interop. Si vous intégrez Notification Services dans une application existante non managée, vous devrez probablement continuer à utiliser le code non managé pour votre interface de gestion d'abonnement. La solution COM Interop est fournie à cet effet.
Espaces de noms qui ne prennent pas en charge COM Interop
Les classes des espaces de noms Notification Services suivants ne prennent pas en charge COM Interop :
- Microsoft.SqlServer.NotificationServices.Rules, qui est utilisé dans les interfaces de gestion d'abonnement prenant en charge les abonnements basés sur des conditions. Cet espace de noms se trouve dans l'assembly
Microsoft.SqlServer.NotificationServices.Rules.dll
. - Microsoft.SqlServer.Management.Nmo, que vous pouvez utiliser pour définir des applications Notification Services par programme et pour configurer, déployer et gérer des instances de Notification Services. Cet espace de noms se trouve dans l'assembly
Microsoft.SqlServer.Smo.dll
.
Espace de noms Microsoft.SqlServer.NotificationServices
Les classes suivantes de l'espace de noms Microsoft.SqlServer.NotificationServices prennent en charge, au moins partiellement, COM Interop :
- ApplicationEnumeration
- DeliveryChannel
- DeliveryChannelEnumeration
- Event
- EventClass
- EventClassEnumeration
- EventCollector
- IEventProvider
- InstanceEnumeration
- NotificationClass
- NotificationClassEnumeration
- NSApplication
- NSInstance
- NSInstanceDescription
- Subscriber
- SubscriberDevice
- SubscriberDeviceEnumeration
- SubscriberEnumeration
- SubscriberLocale
- SubscriberLocaleEnumeration
- Subscription
Remarque : La propriété Condition ne prend pas en charge COM Interop. - SubscriptionClass
- SubscriptionClassEnumeration
- SubscriptionEnumeration
- TimeZone
- TimeZoneEnumeration
Ces classes fournissent un constructeur et une méthode Initialize par défaut pour la création et l'initialisation d'un objet en code non managé. Pour les méthodes surchargées de ces classes, la charge la plus étendue est fournie à l'appelant COM et les paramètres de la méthode sont devenus facultatifs afin d'offrir des fonctionnalités équivalentes.
Si vous avez installé plusieurs versions de Notification Services et si vous utilisez COM Interop, votre code utilise les API provenant de la toute dernière version installée de Notification Services. Il ne s'agit pas nécessairement du numéro de version le plus élevé de Notification Services. Une telle différence peut se produire parce que l'identificateur du programme (sous HKEY_CLASSES_ROOT) se présente sous la forme « Microsoft.SqlServer.NotificationServices.NSInstance » et qu'il pointe toujours sur la dernière version installée.
Pour plus d'informations sur l'utilisation de COM Interop, consultez COM Interoperability in Visual Basic and Visual C# (en anglais) dans la bibliothèque Microsoft MSDN®.
Voir aussi
Concepts
Architecture de Notification Services
Structure de programmation de Notification Services
Options de déploiement de Notification Services
Autres ressources
Création de solutions de notification
Déploiement de Notification Services
Administration de Notification Services