Bagikan melalui


Metode IWSDDeviceHost::AddDynamicService (wsdhost.h)

Mendaftarkan objek layanan untuk permintaan masuk, tetapi tidak menambahkan layanan ke metadata host perangkat. Ini digunakan untuk layanan sementara (dinamis).

Sintaks

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

Parameter

[in] pszServiceId

ID untuk layanan dinamis. ID layanan harus berbeda dari semua ID layanan dalam metadata host layanan dan dari layanan dinamis terdaftar lainnya. pszServiceId harus berupa URI.

[in, optional] pszEndpointAddress

URI opsional untuk digunakan sebagai alamat titik akhir untuk layanan ini. Jika tidak ada yang ditentukan, host perangkat akan menganggap layanan harus tersedia di semua alamat transportasi lokal.

[in, optional] pPortType

Referensi ke struktur WSD_PORT_TYPE yang menentukan jenis port. Mungkin NULL. Tentukan hanya satu dari pPortType dan pPortName.

[in, optional] pPortName

Referensi ke struktur WSDXML_NAME yang menentukan jenis layanan, dengan mengaitkan layanan dengan port tertentu. Tentukan hanya satu dari pPortType dan pPortName.

[in, optional] pAny

Referensi opsional ke bagian yang dapat diperluas untuk disertakan dalam metadata layanan dinamis.

[in, optional] pService

Referensi opsional ke objek layanan host untuk mendaftar.

Nilai kembali

Kemungkinan nilai pengembalian termasuk, tetapi tidak terbatas pada, berikut ini:

Menampilkan kode Deskripsi
S_OK
Metode berhasil diselesaikan.
E_POINTER
pszServiceId adalah NULL.
E_INVALIDARG
Panjang karakter pszServiceId atau pszEndpointAddress melebihi WSD_MAX_TEXT_LENGTH (8192), atau pPortType dan pPortName ditentukan.
E_FAIL
Metode gagal. Ini mungkin gagal karena host belum diinisialisasi, atau layanan yang ditentukan oleh pszServiceId tidak dapat ditemukan. Panggil Init untuk menginisialisasi host perangkat.
E_OUTOFMEMORY
Tidak cukup memori untuk menyelesaikan operasi.

Keterangan

Ketika metode ini dipanggil, perangkat menambahkan referensi ke objek layanan dan memanggil metodenya sebagai respons terhadap pesan permintaan yang ditujukan ke layanan. Panggil metode RemoveDynamicService pada host perangkat untuk merilis referensinya ke layanan dan menghentikan metode panggilan pada layanan.

Persyaratan

   
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header wsdhost.h (termasuk Wsdapi.h)
DLL Wsdapi.dll

Lihat juga

IWSDDeviceHost