Condividi tramite


Funzione WSDCreateDeviceHost (wsdhost.h)

Crea un host del dispositivo e restituisce un puntatore all'interfaccia IWSDDeviceHost .

Sintassi

HRESULT WSDCreateDeviceHost(
  [in]  LPCWSTR        pszLocalId,
  [in]  IWSDXMLContext *pContext,
  [out] IWSDDeviceHost **ppDeviceHost
);

Parametri

[in] pszLocalId

Indirizzo logico o fisico del dispositivo. Un indirizzo logico è nel formato urn:uuid:{guid}. Se pszLocalId è un indirizzo logico, l'host annuncia l'indirizzo logico e quindi converte l'indirizzo in un indirizzo fisico quando riceve i messaggi Resolve o Probe.

Se pszLocalId è un indirizzo fisico (ad esempio, l'URL preceduto da http o https), l'host userà l'indirizzo come indirizzo fisico e ospiterà in tale indirizzo anziché quello predefinito.

Per la comunicazione sicura, pszLocalId deve essere un URL preceduto da https e l'host userà il protocollo SSL/TLS sulla porta specificata nell'URL. La porta consigliata è la porta 5358, perché questa porta è riservata alle connessioni sicure con WSDAPI. Se non viene specificata alcuna porta, l'host userà la porta 443. La porta host deve essere configurata con un certificato server SSL prima di chiamare WSDCreateDeviceHost. Per altre informazioni sulla configurazione delle porte host, vedere HttpSetServiceConfiguration.

Qualsiasi URL (http o https) deve essere terminato con una barra finale. L'URL deve contenere un indirizzo IP o un nome host valido.

L'elenco seguente mostra alcuni valori di esempio per pszLocalId. Non è un elenco completo di valori validi.

  • http://192.168.0.1:5357/
  • http://localhost/
  • http://myHostname:5357/
  • https://192.168.0.1:5358/
  • https://myHostname/
  • https://myHostname/myDevice/
  • https://myHostname:5358/

[in] pContext

Oggetto IWSDXMLContext che definisce tipi di messaggi o spazi dei nomi personalizzati.

Se NULL, viene utilizzato un contesto predefinito che rappresenta i tipi di messaggio e gli spazi dei nomi predefiniti.

[out] ppDeviceHost

Puntatore a un oggetto IWSDDeviceHost usato per esporre la semantica del dispositivo specifica WSD associata a un server che risponde alle richieste in ingresso.

Valore restituito

I valori restituiti possibili includono, ma non sono limitati ai seguenti:

Codice restituito Descrizione
S_OK
Il metodo è stato completato correttamente.
E_INVALIDARG
pszLocalId è NULL o la lunghezza in caratteri di pszLocalId supera WSD_MAX_TEXT_LENGTH (8192).
E_POINTER
ppDeviceHost è NULL.
E_OUTOFMEMORY
Memoria insufficiente per completare l'operazione.

Commenti

La funzione WSDCreateDeviceHost chiama il metodo IWSDDeviceHost::Init , che inizializza un'istanza di un oggetto IWSDDeviceHost .

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wsdhost.h (include Wsdapi.h)
Libreria Wsdapi.lib
DLL Wsdapi.dll

Vedi anche

WSDCreateDeviceHostAdvanced