Uso de Queue Moniker
El moniker de cola se usa para activar un componente en cola mediante programación. El moniker de cola requiere que reciba el identificador de clase (CLSID) del objeto que se va a invocar desde el nuevo moniker directamente a la derecha de él. Cuando se ha prefijo a la izquierda, el nuevo moniker pasa el CLSID al moniker a la izquierda.
Herramienta administrativa servicios de componentes
No corresponde.
Visual Basic
El parámetro de nombre para mostrar GetObject es "queue:/new:", seguido del identificador de programa o guid de forma de cadena, con o sin llaves, del objeto de servidor al que se va a crear una instancia. En los ejemplos siguientes se muestran tres activaciones válidas de un componente con el moniker de cola:
-
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++
El parámetro de nombre para mostrar CoGetObject es "queue:/new:", seguido del identificador de programa o guid de forma de cadena, con o sin llaves, del objeto de servidor al que se va a crear una instancia. En los ejemplos siguientes se muestran tres activaciones válidas de un componente con el moniker de cola:
-
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);
Observaciones
El moniker de cola acepta parámetros opcionales que modifican las propiedades del mensaje enviado a Message Queuing. Por ejemplo, para que el mensaje Message Queuing se envíe con una prioridad 6, el componente en cola se activaría de la siguiente manera:
hr = CoGetObject (
L"queue:Priority=6,ComputerName=MyComp/new:QCShip.Ship",
NULL, IID_IShip, (void**)&pShip);
En la tabla siguiente se enumeran los parámetros de moniker de cola que afectan a la cola de destino.
Parámetro | Descripción |
---|---|
nombreDeEquipo |
Especifica la parte del nombre de equipo de un nombre de ruta de acceso de cola de Message Queuing. El nombre de la ruta de acceso de cola de Message Queuing tiene el formato ComputerName<em>QueueName. Si no se especifica, se usa el nombre de equipo asociado a la aplicación configurada. |
QueueName |
Especifica el nombre de la cola message Queuing. El nombre de la ruta de acceso de cola de Message Queuing tiene el formato ComputerName<em>QueueName. Si no se especifica, se usa el nombre de cola asociado a la aplicación configurada. Para obtener una cola no transaccional, puede especificar primero el nombre de la cola y, a continuación, crear una aplicación COM+ con el mismo nombre. |
PathName |
Especifica el nombre completo de la ruta de acceso de cola de Message Queuing. Si no se especifica, se usa el nombre de la ruta de acceso de cola de Message Queuing asociado a la aplicación configurada. Para invalidar el nombre de destino, la ruta de acceso se puede especificar en el siguiente formulario para una instalación de grupo de trabajo de Message Queuing: Queue:PathName=ComputerName\PRIVATE$\AppName/new:Myproject.CMyClass Nota: Los lenguajes de programación C y Microsoft Visual C++ requieren dos barras diagonales inversas para representar una barra diagonal inversa dentro de literales de cadena, por ejemplo, chicago\payroll. |
FormatName |
Al marcar una aplicación COM+ como en cola, COM+ crea una cola de Message Queuing cuyo nombre es el mismo que la aplicación. El nombre de formato Message Queuing de esa cola está en el catálogo COM+, asociado a la aplicación COM+. Para invalidar el nombre de destino, el nombre de formato se puede especificar en el siguiente formulario para una instalación de grupo de trabajo de Message Queuing: Queue:FormatName=DIRECT=OS:ComputerName\PRIVATE$\AppName/new:ProgId En una configuración de Active Directory, no se especifica "PRIVATE$" como parte del nombre de la cola. |
Nota
Los parámetros de moniker de cola opcionales se procesan de izquierda a derecha. Especifique cada palabra clave solo una vez. Al especificar el parámetro PathName , se reemplazan los parámetros ComputerName y QueueName. Un parámetro FormatName específico elimina el conocimiento previo de un parámetro ComputerName, QueueName y PathName .
Asociación del agente de escucha de componentes en cola con una cola privada específica
El agente de escucha com+ Queued Components solo recibe de las colas asociadas a la aplicación COM+ marcada como en cola. Al marcar una aplicación COM+ como en cola, COM+ crea una cola de Message Queuing cuyo nombre es el mismo que la aplicación. El nombre de formato Message Queuing de esa cola está en el catálogo COM+, asociado a la aplicación COM+. Cuando se inicia y marca la aplicación COM+ como escucha, se inicia un agente de escucha en el proceso de aplicación COM+ y se abre la cola. En la tabla siguiente se enumeran los parámetros de moniker de cola que afectan al mensaje Message Queuing.
Parámetro | Descripción |
---|---|
AppSpecific |
Especifica un entero sin signo, por ejemplo, AppSpecific=12345. |
AuthLevel |
Especifica el nivel de autenticación del mensaje. Un mensaje autenticado está firmado digitalmente y requiere un certificado para que el usuario envíe el mensaje. Valores aceptables:
|
Entrega. |
Especifica la opción de entrega de mensajes. Este valor se omite para las colas transaccionales. Valores aceptables:
|
EncryptAlgorithm |
Especifica el algoritmo de cifrado que va a usar Message Queuing para cifrar y descifrar el mensaje. Valores aceptables:
|
HashAlgorithm |
Especifica una función hash criptográfica. Valores aceptables:
|
Diario |
Especifica la opción message Queuing message journal (Diario de mensajes de Message Queuing). Valores aceptables:
|
Label |
Especifica una cadena de etiqueta de mensaje hasta MQ_MAX_MSG_LABEL_LEN caracteres. |
MaxTimeToReachQueue |
Especifica un tiempo máximo, en segundos, para que el mensaje llegue a la cola. Valores aceptables:
|
MaxTimeToReceive |
Especifica un tiempo máximo, en segundos, para que la aplicación de destino reciba el mensaje. Valores aceptables:
|
Prioridad |
Especifica un nivel de prioridad de mensaje, dentro de los valores de Message Queuing permitidos. Valores aceptables:
|
PrivLevel |
Especifica un nivel de privacidad, que se usa para cifrar los mensajes. Valores aceptables:
|
Seguimiento |
Especifica las opciones de seguimiento, usadas en el seguimiento del enrutamiento de Message Queuing. Valores aceptables:
|
El conjunto completo de funciones del SDK administrativo de COM+ está disponible mediante objetos COM. Esto permite que cualquier programa inicie y detenga las aplicaciones COM+ según sea necesario.
Nota:
Cuando se inicia una aplicación COM+, es la aplicación que se ejecuta, no los componentes individuales de la aplicación. Si una aplicación llama a un componente no en cola, se inicia la aplicación COM+ que contiene el componente. Si la casilla de escucha está habilitada, el agente de escucha también inicia y comienza el procesamiento de mensajes para los componentes en cola. Aunque el servicio de componentes en cola se puede iniciar de esta manera, si empaqueta componentes en cola y no en cola en una sola aplicación COM+, asegúrese de que realmente desea que los componentes en cola se inicien si se ejecuta un componente que no está en cola. Si no es así, empaquete los componentes en cola en una aplicación COM+ que sea independiente de los demás componentes.