Función PeerGraphGetNextItem (p2p.h)

La función PeerGraphGetNextItem obtiene el siguiente elemento o elementos de una enumeración creada por una llamada a las siguientes funciones, que devuelven un identificador de enumeración del mismo nivel:

Sintaxis

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGraphGetNextItem(
  [in]      HPEERENUM hPeerEnum,
  [in, out] ULONG     *pCount,
  [out]     PVOID     **pppvItems
);

Parámetros

[in] hPeerEnum

Identificador de una enumeración.

[in, out] pCount

Input especifica el número de elementos que se van a obtener.

La salida recibe el número real de elementos obtenidos.

Nota Si pCount es una salida cero (0), se alcanza el final de la enumeración.
 

[out] pppvItems

Recibe una matriz de punteros a los elementos solicitados. El número de punteros contenidos en una matriz se especifica mediante el valor de salida de pCount. Los datos reales devueltos dependen del tipo de enumeración. Los tipos de estructuras que se devuelven son los siguientes: PEER_CONNECTION_INFO, PEER_NODE_INFO y PEER_RECORD

Valor devuelto

Si la llamada de función se realiza correctamente, el valor devuelto es S_OK. De lo contrario, devuelve uno de los valores siguientes.

Código devuelto Descripción
E_INVALIDARG
Un parámetro no es válido.
E_OUTOFMEMORY
No hay suficiente memoria para realizar una operación especificada.
PEER_E_NOT_INITIALIZED
El grafo debe inicializarse con una llamada a PeerGraphStartup antes de usar esta función.

Comentarios

PpvItems gratis llamando a PeerGraphFreeData cuando los datos ya no son necesarios.

La aplicación puede solicitar un intervalo de elementos para obtener. La función devuelve pCount o menos elementos.

Ejemplos

El siguiente fragmento de código muestra cómo usar PeerGraphGetNextItem para enumerar objetos y finalizar una enumeración después de terminar de procesar la enumeración.

//PeerGraphGetNextItem snippet
    // hPeerEnum is a handle to the enumeration obtained from a successful call to PeerGraphEnumConnections,
    // PeerGraphEnumNodes, PeerGraphEnumRecords, or PeerGraphSearchRecords.
    // Set count equal to the maximum number of items you want returned. To obtain a count of all the items
    // in the enumeration, call PeerGraphGetItemCount.
    // ppRecord is an array of pointers to PEER_RECORD objects.  PEER_CONNECTION_INFO and PEER_NODE_INFO structures
    // are also supported.
    HRESULT hr = PeerGraphGetNextItem(hPeerEnum, &count, (PVOID *)&ppRecord);
    if (FAILED(hr))
    {
        // Insert your code to handle the error here.
    }
    else
    {
        // Free the data obtained by PeerGraphGetNextItem.
        PeerGraphFreeData(ppRecord);
    }

    // If you are done with the enumeration, free the handle to the enumeration.
    PeerGraphEndEnumeration(hPeerEnum);

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP con SP2 [solo aplicaciones de escritorio],Windows XP con SP1 con advanced Networking Pack forWindows XP
Servidor mínimo compatible No se admite ninguno
Plataforma de destino Windows
Encabezado p2p.h
Library P2PGraph.lib
Archivo DLL P2PGraph.dll

Consulte también

PEER_CONNECTION_INFO

PEER_NODE_INFO

PEER_RECORD

PeerGraphEndEnumeration

PeerGraphEnumConnections

PeerGraphEnumNodes

PeerGraphEnumRecords

PeerGraphFreeData

PeerGraphSearchRecords