Función PeerDistServerPublishStream (peerdist.h)
La función PeerDistServerPublishStream inicializa una nueva secuencia que se publicará en el servicio de distribución del mismo nivel.
Sintaxis
DWORD PeerDistServerPublishStream(
[in] PEERDIST_INSTANCE_HANDLE hPeerDist,
DWORD cbContentIdentifier,
[in] PBYTE pContentIdentifier,
ULONGLONG cbContentLength,
[in, optional] PCPEERDIST_PUBLICATION_OPTIONS pPublishOptions,
[in, optional] HANDLE hCompletionPort,
[in, optional] ULONG_PTR ulCompletionKey,
[out] PPEERDIST_STREAM_HANDLE phStream
);
Parámetros
[in] hPeerDist
Un PEERDIST_INSTANCE_HANDLE devuelto por PeerDistStartup.
cbContentIdentifier
Longitud, en bytes, del búfer que contiene datos de identificador de contenido.
[in] pContentIdentifier
Puntero a una matriz que contiene datos de identificador de contenido.
cbContentLength
Longitud, en bytes, del contenido que se va a publicar. Este valor puede ser 0 si aún no se conoce la longitud del contenido. Si se proporciona un argumento distinto de cero, debe coincidir con la longitud total de datos agregada por las llamadas a la función PeerDistServerPublishAddToStream .
[in, optional] pPublishOptions
Puntero a una estructura de PEERDIST_PUBLICATION_OPTIONS que especifica reglas de publicación de contenido.
[in, optional] hCompletionPort
Identificador del puerto de finalización que se puede usar para recuperar la notificación de finalización de la función asincrónica. Para crear un puerto de finalización, use la función CreateIoCompletionPort. Este parámetro puede ser NULL.
[in, optional] ulCompletionKey
Valor devuelto a través del parámetro lpCompletionKey de la función GetQueuedCompletionStatus . Este parámetro se omite cuando hCompletionPort es NULL.
[out] phStream
Puntero que recibe un identificador de la secuencia que se usa para publicar datos en el servicio de distribución del mismo nivel.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto se ERROR_SUCCESS. De lo contrario, es posible que la función devuelva uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
|
Uno o varios parámetros no son válidos. |
|
El hPeerDist especificado no es válido. |
|
El identificador de contenido usado para la publicación ya está publicado. |
|
La característica está deshabilitada por directiva de grupo. |
|
El servicio no está disponible. |
Comentarios
Un identificador de contenido es una etiqueta definida por el usuario para el contenido que se publica. Este identificador de contenido se usa para las llamadas PeerDistServerOpenContentInformation, PeerDistServerUnpublish y PeerDistServerCancelAsyncOperation .
El identificador recibido por phStream se puede usar en PeerDistServerPublishAddToStream y PeerDistServerPublishCompleteStream para publicar datos en el servicio de distribución del mismo nivel. PeerDistServerCloseStreamHandle debe cerrar este identificador.
Una publicación solo es accesible para la cuenta de usuario que publicó originalmente el contenido. Si un usuario diferente llama a PeerDistServerPublishStream con el mismo identificador de contenido, se creará una publicación independiente en el contexto de ese usuario.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 7 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | peerdist.h |
Library | PeerDist.lib |
Archivo DLL | PeerDist.dll |
Consulte también
PeerDistServerCancelAsyncOperation
PeerDistServerCloseStreamHandle
PeerDistServerOpenContentInformation
PeerDistServerPublishAddToStream