Visualizzazione dei messaggi quando la lunghezza del messaggio è sconosciuta

Per sfogliare un messaggio quando non si conosce la dimensione del messaggio e non si desidera utilizzare i campi MsgId, CorrelIdo GroupId per individuare il messaggio, è possibile utilizzare l'opzione MQGMO_BROWSE_MSG_UNDER_CURSOR:
  1. Emettere un MQGET con:
    • L'opzione MQGMO_BROWSE_FIRST o MQGMO_BROWSE_NEXT
    • L'opzione MQGMO_ACCEPT_TRUNCATED_MSG
    • Lunghezza buffer zero
    Nota: se è probabile che un altro programma ricevi lo stesso messaggio, utilizzare anche l'opzione MQGMO_LOCK. MQRC_TRUNCATED_MSG_ACCEPTED deve essere restituito.
  2. Utilizzare il DataLength restituito per allocare la memoria necessaria.
  3. Emettere MQGET con MQGMO_BROWSE_MSG_UNDER_CURSOR.

Il messaggio puntato è l'ultimo che è stato richiamato; il cursore di ricerca non sarà stato spostato. È possibile scegliere di bloccare il messaggio utilizzando l'opzione MQGMO_LOCK o di sbloccare un messaggio bloccato utilizzando l'opzione MQGMO_UNLOCK.

La chiamata non riesce se nessuna opzione MQGET con le opzioni MQGMO_BROWSE_FIRST o MQGMO_BROWSE_NEXT è stata emessa correttamente da quando è stata aperta la coda.