PeerDistServerPublishStream 函式 (peerdist.h)

PeerDistServerPublishStream 函式會初始化要發佈至對等散發服務的新數據流。

語法

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
);

參數

[in] hPeerDist

PeerDistStartup 傳回的PEERDIST_INSTANCE_HANDLE。

cbContentIdentifier

包含內容標識碼數據的緩衝區長度,以位元組為單位。

[in] pContentIdentifier

包含內容識別碼數據的陣列指標。

cbContentLength

要發佈之內容的長度,以位元組為單位。 如果尚未知道內容長度,這個值可以是 0。 如果提供非零自變數,則必須符合 PeerDistServerPublishAddToStream 函式呼叫所新增的總數據長度。

[in, optional] pPublishOptions

指定內容發佈規則 之PEERDIST_PUBLICATION_OPTIONS 結構的指標。

[in, optional] hCompletionPort

可用於擷取異步函式完成通知之完成埠的句柄。 若要建立完成埠,請使用 CreateIoCompletionPort 函式。 此參數可以是 Null

[in, optional] ulCompletionKey

透過 GetQueuedCompletionStatus 函式的 lpCompletionKey 參數傳回的值。 當 hCompletionPortNULL 時,會忽略此參數。

[out] phStream

接收數據流句柄的指標,用來將數據發佈至對等散發服務。

傳回值

如果函式成功,傳回值 會ERROR_SUCCESS。 否則,此函式可能會傳回下列其中一個值:

傳回碼 Description
ERROR_INVALID_PARAMETER
一或多個參數無效。
ERROR_INVALID_HANDLE
指定的 hPeerDist 無效。
PEERDIST_ERROR_ALREADY_EXISTS
用於發行集的內容標識碼已經發佈。
ERROR_ACCESS_DISABLED_BY_POLICY
此功能已停用 群組原則。
PEERDIST_ERROR_SERVICE_UNAVAILABLE
服務無法使用。

備註

內容標識碼是所發行內容的使用者定義標籤。 此內容標識符用於 PeerDistServerOpenContentInformationPeerDistServerUnpublishPeerDistServerCancelAsyncOperation 呼叫。

phStream 收到的句柄可用於 PeerDistServerPublishAddToStreamPeerDistServerPublishCompleteStream ,將數據發佈至對等散發服務。 此句柄應該由 PeerDistServerCloseStreamHandle 關閉。

只有最初發佈內容的用戶帳戶才能存取發行集。 如果不同的使用者呼叫具有相同內容標識符的 PeerDistServerPublishStream ,則會在該使用者的內容下建立個別的發行集。

規格需求

需求
最低支援的用戶端 Windows 7 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限傳統型應用程式]
目標平台 Windows
標頭 peerdist.h
程式庫 PeerDist.lib
Dll PeerDist.dll

另請參閱

PeerDistServerCancelAsyncOperation

PeerDistServerCloseStreamHandle

PeerDistServerOpenContentInformation

PeerDistServerPublishAddToStream

PeerDistServerPublishCompleteStream

PeerDistServerUnpublish