Método IWSDDeviceHost::AddDynamicService (wsdhost.h)
Registra um objeto de serviço para solicitações de entrada, mas não adiciona o serviço aos metadados do host do dispositivo. Isso é usado para serviços transitórios (dinâmicos).
Sintaxe
HRESULT AddDynamicService(
[in] LPCWSTR pszServiceId,
[in, optional] LPCWSTR pszEndpointAddress,
[in, optional] const WSD_PORT_TYPE *pPortType,
[in, optional] const WSDXML_NAME *pPortName,
[in, optional] const WSDXML_ELEMENT *pAny,
[in, optional] IUnknown *pService
);
Parâmetros
[in] pszServiceId
A ID do serviço dinâmico. A ID do serviço deve ser distinta de todas as IDs de serviço nos metadados do host do serviço e de qualquer outro serviço dinâmico registrado. O pszServiceId deve ser um URI.
[in, optional] pszEndpointAddress
Um URI opcional a ser usado como o endereço do ponto de extremidade para esse serviço. Se nenhum for especificado, o host do dispositivo assumirá que o serviço deve estar disponível em todos os endereços de transporte locais.
[in, optional] pPortType
Referência a uma estrutura de WSD_PORT_TYPE que especifica o tipo de porta. Pode ser NULL. Especifique apenas um de pPortType e pPortName.
[in, optional] pPortName
Referência a uma estrutura de WSDXML_NAME que especifica o tipo do serviço, com a associação do serviço a uma porta especificada. Especifique apenas um de pPortType e pPortName.
[in, optional] pAny
Referência opcional a uma seção extensível a ser incluída nos metadados de serviço dinâmico.
[in, optional] pService
Referência opcional a um objeto de serviço de host a ser registrado.
Valor retornado
Os possíveis valores retornados incluem, mas não se limitam a, o seguinte:
Código de retorno | Descrição |
---|---|
|
Método concluído com êxito. |
|
pszServiceId é NULL. |
|
O comprimento em caracteres de pszServiceId ou pszEndpointAddress excede WSD_MAX_TEXT_LENGTH (8192) ou pPortType e pPortName são especificados. |
|
O método falhou. Pode ter falhado porque o host não foi inicializado ou o serviço especificado por pszServiceId não pôde ser encontrado. Chame Init para inicializar um host de dispositivo. |
|
Memória insuficiente para concluir a operação. |
Comentários
Quando esse método é chamado, o dispositivo adiciona uma referência ao objeto de serviço e chama seus métodos em resposta às mensagens de solicitação endereçadas ao serviço. Chame o método RemoveDynamicService no host do dispositivo para liberar sua referência ao serviço e parar de chamar métodos no serviço.
Requisitos
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | wsdhost.h (inclua Wsdapi.h) |
DLL | Wsdapi.dll |