Utilisation du moniker de la file d’attente
Le moniker de la file d’attente est utilisé pour activer un composant mis en file d’attente par programmation. Le moniker de la file d’attente requiert qu’il reçoive l’ID de classe (CLSID) de l’objet à appeler à partir du nouveau moniker directement à sa droite. Lorsqu’il est préfixé à gauche, le nouveau moniker passe le CLSID au moniker à gauche de celui-ci.
Outil d’administration Services de composants
Non applicable.
Visual Basic
Le paramètre de nom complet GetObject est « queue:/New : », suivi de l’ID de programme ou du GUID de forme chaîne, avec ou sans accolades, de l’objet serveur à instancier. Les exemples suivants illustrent trois activations valides d’un composant avec le moniker de file d’attente :
-
Set objMyQC = GetObject ("queue:/new:QCShip.Ship") -
Set objMyQC = GetObject ("queue:/new:{812DF40E-BD88-11D0-8A6D-00C04FC340EE}") -
Set objMyQC = GetObject ("queue:/new:812DF40E-BD88-11D0-8A6D-00C04FC340EE")
C/C++
Le paramètre CoGetObject Display Name est « queue:/New : », suivi de l’ID de programme ou du GUID de forme chaîne, avec ou sans accolades, de l’objet serveur à instancier. Les exemples suivants illustrent trois activations valides d’un composant avec le moniker de file d’attente :
-
hr = CoGetObject ( L"queue:/new:QCShip.Ship", NULL, IID_IShip, (void**)&pShip); -
hr = CoGetObject ( L"queue:/new:{812DF40E-BD88-11D0-8A6D-00C04FC340EE}", NULL, IID_IShip, (void**)&pShip); -
hr = CoGetObject ( L"queue:/new:812DF40E-BD88-11D0-8A6D-00C04FC340EE", NULL, IID_IShip, (void**)&pShip);
Remarques
Le moniker de la file d’attente accepte des paramètres facultatifs qui modifient les propriétés du message envoyé à Message Queuing. Par exemple, pour faire en sorte que le message Message Queuing soit envoyé avec une priorité 6, le composant mis en file d’attente est activé comme suit :
hr = CoGetObject (
L"queue:Priority=6,ComputerName=MyComp/new:QCShip.Ship",
NULL, IID_IShip, (void**)&pShip);
Le tableau suivant répertorie les paramètres du moniker de la file d’attente qui affectent la file d’attente de destination.
| Paramètre | Description |
|---|---|
| ComputerName |
Spécifie la partie nom d’ordinateur d’un nom de chemin d’accès de file d’attente Message Queuing. Le nom du chemin d’accès de la file d’attente Message Queuing est au format ComputerName <em> QueueName . S’il n’est pas spécifié, le nom de l’ordinateur associé à l’application configurée est utilisé. |
| QueueName |
Spécifie le nom de la file d’attente Message Queuing. Le nom du chemin d’accès de la file d’attente Message Queuing est au format ComputerName <em> QueueName . S’il n’est pas spécifié, le nom de la file d’attente associé à l’application configurée est utilisé. Pour obtenir une file d’attente non transactionnelle, vous pouvez d’abord spécifier le nom de la file d’attente, puis créer une application COM+ portant le même nom. |
| PathName |
Spécifie le nom complet du chemin d’accès de la file d’attente Message Queuing. S’il n’est pas spécifié, le nom du chemin d’accès de la file d’attente Message Queuing associé à l’application configurée est utilisé. Pour remplacer le nom de destination, le chemin d’accès peut être spécifié sous la forme suivante pour une installation de Message Queuing groupe de travail : Queue :pathname = nomordinateur\private $ \ AppName/New : MyProject. CMyClass [!Note] |
| FormatName |
Lorsque vous marquez une application COM+ comme en file d’attente, COM+ crée une file d’attente Message Queuing dont le nom est identique à celui de l’application. Le nom de format Message Queuing de cette file d’attente se trouve dans le catalogue COM+, associé à l’application COM+. Pour remplacer le nom de destination, le nom de format peut être spécifié sous la forme suivante pour une installation Message Queuing groupe de travail : Queue :FormatName= direct = OS :nom_ordinateur\private $ \ AppName/New : ProgID Dans une configuration Active Directory, « PRIVATE $ » n’est pas spécifié dans le nom de la file d’attente. |
Notes
Les paramètres facultatifs du moniker de la file d’attente sont traités de gauche à droite. Spécifiez chaque mot clé une seule fois. La spécification du paramètre pathname remplace les paramètres ComputerName et QueueName. Un paramètre FormatName spécifique supprime la connaissance préalable d’un paramètre ComputerName, QueueName et pathname .
Association de l’écouteur de composants en file d’attente à une file d’attente privée spécifique
L’écouteur de composants en file d’attente COM+ reçoit uniquement des files d’attente associées à l’application COM+ marquée en file d’attente. Lorsque vous marquez une application COM+ comme en file d’attente, COM+ crée une file d’attente Message Queuing dont le nom est identique à celui de l’application. Le nom de format Message Queuing de cette file d’attente se trouve dans le catalogue COM+, associé à l’application COM+. Lorsque l’application COM+ est démarrée et marquée comme Listen, un écouteur dans le processus de l’application COM+ est démarré et la file d’attente est ouverte. Le tableau suivant répertorie les paramètres du moniker de la file d’attente qui affectent le message de Message Queuing.
| Paramètre | Description |
|---|---|
| AppSpecific |
Spécifie un entier non signé, par exemple, AppSpecific = 12345. |
| AuthLevel |
Spécifie le niveau d’authentification du message. Un message authentifié est signé numériquement et requiert un certificat pour l’utilisateur qui envoie le message. Valeurs acceptables :
|
| Distribution |
Spécifie l’option de remise de message. Cette valeur est ignorée pour les files d’attente transactionnelles. Valeurs acceptables :
|
| EncryptAlgorithm |
Spécifie l’algorithme de chiffrement à utiliser par Message Queuing pour chiffrer et déchiffrer le message. Valeurs acceptables :
|
| HashAlgorithm |
Spécifie une fonction de hachage de chiffrement. Valeurs acceptables :
|
| Journal |
Spécifie l’option Message Queuing le journal des messages. Valeurs acceptables :
|
| Étiquette |
Spécifie une chaîne d’étiquette de message jusqu’à MQ_MAX_MSG_LABEL_LEN caractères. |
| MaxTimeToReachQueue |
Spécifie la durée maximale, en secondes, pendant laquelle le message atteint la file d’attente. Valeurs acceptables :
|
| MaxTimeToReceive |
Spécifie la durée maximale, en secondes, pendant laquelle le message est reçu par l’application cible. Valeurs acceptables :
|
| Priorité |
Spécifie un niveau de priorité de message dans les valeurs Message Queuing autorisées. Valeurs acceptables :
|
| PrivLevel |
Spécifie un niveau de confidentialité, utilisé pour chiffrer les messages. Valeurs acceptables :
|
| Trace |
Spécifie les options de trace utilisées dans le suivi Message Queuing routage. Valeurs acceptables :
|
L’ensemble complet des fonctions du kit de développement logiciel (SDK) d’administration COM+ est disponible à l’aide d’objets COM. Cela permet à n’importe quel programme de démarrer et d’arrêter les applications COM+ selon les besoins.
Notes
Lors du démarrage d’une application COM+, il s’agit de l’application en cours d’exécution, et non des composants individuels de l’application. Si une application appelle un composant non mis en file d’attente, l’application COM+ qui contient le composant est démarrée. Si la case à cocher écouteur est activée, l’écouteur démarre et commence le traitement des messages pour les composants en file d’attente. Alors que le service de composants en file d’attente peut être démarré de cette manière, si vous empaquetez des composants mis en file d’attente et non mis en file d’attente dans une seule application COM+, assurez-vous que vous souhaitez vraiment que les composants en file d’attente démarrent si un composant non mis en file d’attente est exécuté. Si ce n’est pas le cas, empaquetez les composants mis en file d’attente dans une application COM+ distincte des autres composants.