Fungsi WsCreateChannel (webservices.h)

Membuat saluran untuk pertukaran pesan dengan titik akhir.

Sintaks

HRESULT WsCreateChannel(
  [in]           WS_CHANNEL_TYPE               channelType,
  [in]           WS_CHANNEL_BINDING            channelBinding,
  [in]           const WS_CHANNEL_PROPERTY     *properties,
  [in]           ULONG                         propertyCount,
  [in, optional] const WS_SECURITY_DESCRIPTION *securityDescription,
                 WS_CHANNEL                    **channel,
  [in, optional] WS_ERROR                      *error
);

Parameter

[in] channelType

Jenis saluran. Untuk jenis saluran, lihat enumerasi WS_CHANNEL_TYPE . Ini mewakili pola pertukaran pesan untuk saluran yang sedang dibuat.

[in] channelBinding

Pengikatan saluran, menunjukkan tumpukan protokol yang akan digunakan untuk saluran baru. Untuk pengikatan saluran yang tersedia, lihat enumerasi WS_CHANNEL_BINDING .

[in] properties

Array struktur WS_CHANNEL_PROPERTY yang berisi nilai opsional untuk inisialisasi saluran. Nilai parameter ini mungkin NULL, dalam hal ini, parameter propertyCount harus 0 (nol).

Untuk informasi tentang properti saluran mana yang dapat ditentukan saat Anda membuat saluran, lihat enumerasi WS_CHANNEL_PROPERTY_ID .

Untuk informasi tentang membuat saluran kustom, lihat bagian Keterangan.

[in] propertyCount

Jumlah properti dalam array properti .

[in, optional] securityDescription

Penunjuk ke struktur WS_SECURITY_DESCRIPTION yang menentukan keamanan untuk saluran.

Jika Anda membuat saluran kustom (menggunakan nilai WS_CUSTOM_CHANNEL_BINDING enumerasi WS_CHANNEL_BINDING ), deskripsi keamanan harus NULL. Lihat bagian Keterangan.

channel

Pointer yang menerima alamat saluran yang dibuat.
Ketika saluran tidak lagi diperlukan, Anda harus membebaskannya dengan memanggil WsFreeChannel.

[in, optional] error

Penunjuk ke struktur WS_ERROR yang menerima informasi kesalahan tambahan jika fungsi gagal.

Mengembalikan nilai

Jika fungsi berhasil, fungsi akan mengembalikan NO_ERROR; jika tidak, kode kesalahan HRESULT akan dikembalikan.

Menampilkan kode Deskripsi
E_INVALIDARG
Satu atau beberapa argumen tidak valid.
E_OUTOFMEMORY
Tidak cukup memori untuk menyelesaikan operasi.
Kesalahan Lain
Fungsi ini dapat mengembalikan kesalahan lain yang tidak tercantum di atas.

Keterangan

Gunakan fungsi WsOpenChannel untuk memulai komunikasi di saluran dan untuk menentukan titik akhir.

Saat Anda membuat saluran kustom (menggunakan nilai WS_CUSTOM_CHANNEL_BINDING enumerasi WS_CHANNEL_BINDING ), Anda hanya dapat menentukan properti saluran berikut:

  • WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS
  • WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS
(Lihat enumerasi WS_CHANNEL_PROPERTY_ID ) Jika properti awal diperlukan untuk membuat saluran kustom, tentukan dengan menggunakan properti WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS.

Untuk meneruskan informasi keamanan ke implementasi saluran kustom, gunakan nilai WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS enumerasi WS_CHANNEL_PROPERTY_ID .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header webservices.h
Pustaka WebServices.lib
DLL WebServices.dll