Поделиться через


Функции API однорангового распределения

Служба распространения одноранговых узлов Майкрософт поддерживает функции как для сценариев роли потребителя, так и для ролей издателя.

Следующие функции являются общими в сценариях "client" и "server".

Общие функции Описание
PeerDistStartup Создает новый экземпляр PEERDIST_INSTANCE_HANDLE, который необходимо передать всем другим API-интерфейсам однорангового распределения.
PeerDistShutdown Освобождает ресурсы, выделенные вызовом PeerDistStartup.
PeerDistGetStatus Возвращает текущее состояние службы однорангового распространения.
PeerDistGetStatusEx Возвращает текущее состояние и возможности службы однорангового распространения.
PeerDistGetOverlappedResult Извлекает результаты асинхронных операций.
PeerDistRegisterForStatusChangeNotification Запрашивает, чтобы служба однорангового распространения уведомляла вызывающего пользователя при изменении состояния.
PeerDistRegisterForStatusChangeNotificationEx Запрашивает, чтобы служба однорангового распространения уведомляла вызывающего пользователя при изменении состояния.
PeerDistUnregisterForStatusChangeNotification Отменяет регистрацию уведомления об изменении состояния для сеанса, связанного с предоставленным дескриптором.

 

Следующие функции поддерживаются только в сценариях клиента.

Клиентские функции Описание
PeerDistClientOpenContent Открывает и возвращает PEERDIST_CONTENT_HANDLE для ссылки на это содержимое.
PeerDistClientCloseContent Закрывает PEERDIST_CONTENT_HANDLE.
PeerDistClientGetInformationByHandle Извлекает дополнительные сведения из службы однорангового распространения для определенного дескриптора содержимого.
PeerDistClientAddContentInformation Добавляет сведения о содержимом, которые затем связаны с PEERDIST_CONTENT_HANDLE. PEERDIST_CONTENT_HANDLE можно связать с любой информацией о содержимом.
PeerDistClientCompleteContentInformation Указывает конец сведений о содержимом.
PeerDistClientAddData Используется для предоставления содержимого локальному кэшу. Обычно это делается, если данные не удалось найти в локальной сети, как указано, когда PeerDistClientBlockRead или PeerDistClientStreamRead завершено с ERROR_TIMEOUT или PEERDIST_ERROR_MISSING_DATA..
PeerDistClientBlockRead Предоставляет случайный доступ к потоку содержимого.
PeerDistClientStreamRead Предоставляет последовательный доступ к потоку содержимого.
PeerDistClientFlushContent Удаляет содержимое, которое ранее было добавлено в локальную систему распространения одноранговых узлов.
PeerDistClientCancelAsyncOperation Отменяет асинхронную операцию, связанную с структурой OVERLAPPED, и дескриптор содержимого, возвращенный peerDistClientOpenContent.

 

Следующие функции поддерживаются только в сценариях сервера.

Функции сервера Описание
PeerDistServerPublishStream Создает PEERDIST_STREAM_HANDLE, которые можно использовать с PeerDistServerPublishAddToStream для создания сведений о содержимом для потока контента.
PeerDistServerPublishAddToStream Добавляет данные в поток, на который ссылается дескриптор потока PeerDist.
PeerDistServerPublishCompleteStream Вызывается, чтобы указать, что все данные добавлены в поток.
PeerDistServerCloseStreamHandle Закрывает дескриптор потока.
PeerDistServerUnpublish Отмена публикации ранее опубликованного содержимого в службе однорангового распространения.
PeerDistServerOpenContentInformation Открывает PEERDIST_CONTENTINFO_HANDLE для опубликованного содержимого.
PeerDistServerOpenContentInformationEx Открывает PEERDIST_CONTENTINFO_HANDLE для опубликованного содержимого.
PeerDistServerRetrieveContentInformation Извлекает сведения о содержимом, связанные с опубликованным содержимым.
PeerDistServerCloseContentInformation PEERDIST_CONTENTINFO_HANDLE открыт PeerDistServerOpenContentInformation.
PeerDistServerCancelAsyncOperation Отменяет асинхронную операцию, связанную с идентификатором содержимого и структурой OVERLAPPED.