Syntax
MAPIQueryRecipientList(Recipients, RecipName$, Address$)
Remarks
Retrieves information about recipients in a recipient list. On the first call to MAPIQueryRecipientList, Recipients must be a handle
to a recipient list of the type returned by MAPIAddress. The MAPIQueryRecipientList function returns –1 to indicate that there are no
more recipients. Otherwise, it returns the recipient class of the recipient.
| Argument | Explanation | 
| Recipients | A handle to a recipient list on the first call to MAPIQueryRecipientList. Use 0 (zero) for succeeding calls. | 
| RecipName$ | The friendly name of the recipient as displayed by the messaging system. | 
| Address$ | Provider-specific message delivery data. This field can be used by the message system to identify recipients who are not in an address list (custom recipients). | 
The following table lists the possible return values of the MAPIQueryRecipientList function and their meanings.
| Value | Name | Meaning | 
| 0 | MAPI_ORIG | The recipient is the originator of the message. | 
| 1 | MAPI_TO | The recipient is a To recipient of the message. | 
| 2 | MAPI_CC | The recipient is a carbon-copy (CC) recipient of the message. | 
| 3 | MAPI_BCC | The recipient is a blind carbon-copy (BCC) recipient of the message. | 
| –1 | Either the recipient list contains no recipients or all recipients have been queried. | |
Example
The following example displays the Mail Address Book, which returns a handle to a recipient list. The example then prompts the user to resolve any unresolved names in the list. Finally, all resolved names are added to a new message.
Sub MAIN
MAPI_LOGON_UI = 1
MAPI_DIALOG = 8
Session = MAPILogon(0, "", "", MAPI_LOGON_UI, 0)
RecipList = MAPIAddress(Session, 0, "", 4, "", 0, 0)
If RecipList >= 0 Then
    'Query the first recipient
    RecipClass = 0
    RecipName$ = ""
    Address$ = ""
    RecipClass = MAPIQueryRecipientList(RecipList, RecipName$, Address$)
    While RecipClass >= 0
        'Process the recipient
        If Address$ <> "" Then
            result = MAPISetRecipient(RecipClass, RecipName$, Address$)
        Else
            ResolveList = MAPIResolveName(Session, 0, RecipName$, \
              Address$, MAPI_DIALOG, 0)
            If ResolveList >= 0 Then
                result = MAPIQueryRecipientListElement(ResolveList, 0, \
                  RecipName$, Address$)
                result = MAPISetRecipient(RecipClass, RecipName$, \
                  Address$)
            Else
                result = MAPISetRecipient(RecipClass, RecipName$, "")
            End If
        End If
        'Query the next recipient
        RecipClass = 0
        RecipName$ = ""
        Address$ = ""
        RecipClass = MAPIQueryRecipientList(0, RecipName$, Address$)
    Wend
    'Display the Send Note dialog
    result = MAPISendMail(Session, 0, "", "", MAPI_DIALOG, 0)
End If
result = MAPILogoff(Session, 0, 0, 0)
End Sub