Condividi tramite


Metodo IWSDDeviceHost::Init (wsdhost.h)

Inizializza un'istanza di un oggetto IWSDDeviceHost , ovvero la rappresentazione lato host di un dispositivo.

Sintassi

HRESULT Init(
  [in]           LPCWSTR        pszLocalId,
  [in, optional] IWSDXMLContext *pContext,
  [in, optional] IWSDAddress    **ppHostAddresses,
  [in, optional] DWORD          dwHostAddressCount
);

Parametri

[in] pszLocalId

Indirizzo logico o fisico del dispositivo. Un indirizzo logico è del modulo 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 URL preceduto da http o https), l'host userà l'indirizzo come indirizzo fisico e ospiterà su 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. 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, optional] pContext

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

[in, optional] ppHostAddresses

Oggetto IWSDAddress singolo o oggetto IWSDTransportAddress . Gli oggetti forniscono informazioni sugli indirizzi specifici su cui l'host deve essere in ascolto.

Se pszLocalId contiene un indirizzo locale, il comportamento risultante è un mapping tra l'indirizzo logico e l'indirizzo fisico specificato , anziché un mapping tra l'indirizzo logico e l'indirizzo fisico predefinito.

[in, optional] dwHostAddressCount

Numero di elementi nella matrice ppHostAddresses . Se ppHostAddresses è un'interfaccia IWSDAddress , il conteggio deve essere 1.

Valore restituito

I valori restituiti possibili includono, ma non sono limitati a, quanto segue:

Codice restituito Descrizione
S_OK
Metodo completato correttamente.
E_INVALIDARG
pszLocalId è NULL, la lunghezza in caratteri di pszLocalId supera WSD_MAX_TEXT_LENGTH (8192) o il numero di indirizzi a cui fa riferimento ppHostAddresses non corrisponde a dwHostAddressCount.
E_FAIL
L'host del dispositivo si trova in uno stato imprevisto.
E_OUTOFMEMORY
Memoria insufficiente per completare l'operazione.
E_ABORT
Impossibile completare l'inizializzazione.

Commenti

Questo metodo viene chiamato da WSDCreateDeviceHost e non deve essere chiamato direttamente dal codice.

Requisiti

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

Vedi anche

IWSDDeviceHost