PFN_WSK_BIND回呼函式 (wsk.h)
WskBind 函式會將套接字系結至本機傳輸位址。
語法
PFN_WSK_BIND PfnWskBind;
NTSTATUS PfnWskBind(
[in] PWSK_SOCKET Socket,
[in] PSOCKADDR LocalAddress,
ULONG Flags,
[in, out] PIRP Irp
)
{...}
參數
[in] Socket
指定所系結套接字之套接字物件的 WSK_SOCKET 結構的指標。
[in] LocalAddress
結構的指標,指定要系結套接字的本機傳輸位址。 此指標必須是特定 SOCKADDR 結構類型的指標,其對應至 WSK 應用程式在建立套接字時所指定的位址系列。
Flags
此參數保留給系統使用。 WSK 應用程式必須將此參數設定為零。
[in, out] Irp
WSK 子系統用來以異步方式完成系結作業的呼叫端配置 IRP 指標。 如需搭配 WSK 函式使用 IRP 的詳細資訊,請參閱 搭配 Winsock 核心函式使用 IRP。
傳回值
WskBind 會傳回下列其中一個 NTSTATUS 代碼:
傳回碼 | Description |
---|---|
|
套接字已成功系結至本機傳輸位址。 IRP 將會以成功狀態完成。 |
|
WSK 子系統無法立即系結套接字。 WSK 子系統會在將套接字系結至本機傳輸地址之後完成 IRP。 系結作業的狀態將會在 IRP 的 [IoStatus.Status ] 字段中傳回。 |
|
套接字已不再運作。 IRP 將會以失敗狀態完成。 WSK 應用程式必須呼叫 WskCloseSocket 函式,才能儘快關閉套接字。 |
|
發生錯誤。 IRP 將會以失敗狀態完成。 |
備註
針對接聽套接字,呼叫 WskBind 函式會準備套接字,以接聽指定本機傳輸位址上的連入連線要求。 如果 WSK 應用程式指定本機通配符位址,套接字將會接聽所有本機傳輸位址上的連入連線要求。
針對數據報套接字,呼叫 WskBind 函式會準備套接字,以在指定的本機傳輸位址上傳送和接收數據報。 如果 WSK 應用程式指定本機通配符位址,套接字將會在所有本機傳輸位址上接收數據報,並從系統路由資訊所決定的適當本機傳輸位址傳送數據報。
針對連線導向套接字,呼叫 WskBind 函式會將套接字系結至指定的本機傳輸位址。 呼叫 WskConnect 函式之前,必須先呼叫 WskBind。 如果 WSK 應用程式指定本機通配符位址,當應用程式呼叫 WskConnect 以將套接字連線到遠端傳輸位址時,網路堆疊會將套接字系結至適當的本機傳輸位址。 在這種情況下,本機傳輸位址是由系統的路由資訊所決定。
針對數據流套接字,呼叫 WskBind 函式會將套接字系結至指定的本機傳輸位址。 如果 WSK 應用程式指定本機通配符位址,網路堆疊會將套接字系結至可用的本機傳輸位址。 呼叫 WskListen 或 WskConnect 函式之前,必須先呼叫 WskBind。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 可在 Windows Vista 和更新版本的 Windows 作業系統中使用。 |
目標平台 | Universal |
標頭 | wsk.h (包含 Wsk.h) |
IRQL | <= DISPATCH_LEVEL |