ConnectNamedPipe是指示一台伺服器等待下去,直至客戶機同一個命名管道連線。
基本介紹
- 中文名:ConnectNamedPipe
- 外文名:無
- 學科:計算機學
- 說明:指示一台伺服器等待下去
簡介,說明,
簡介
ConnectNamedPipe
VB聲明
Declare Function ConnectNamedPipe Lib "kernel32" Alias "ConnectNamedPipe" (ByVal hNamedPipe As Long, lpOverlapped As OVERLAPPED) As Long
說明
指示一台伺服器等待下去,直至客戶機同一個命名管道連線
返回值
Long,如lpOverlapped為NULL,那么:
□ 如管道已連線,就返回Ture(非零);如發生錯誤,或者管道已經連線,就返回零(GetLastError此時會返回ERROR_PIPE_CONNECTED)
□ lpOverlapped有效,就返回零;如管道已經連線,GetLastError會返回ERROR_PIPE_CONNECTED;如重疊操作成功完成,就返回ERROR_IO_PENDING。在這兩種情況下,倘若一個客戶已關閉了管道,且伺服器尚未用DisconnectNamedPipe函式同客戶下線,那么GetLastError都會返回ERROR_NO_DATA
參數表
參數 類型及說明
hNamedPipe Long,管道的句柄
lpOverlapped OVERLAPPED,如設為NULL(傳遞ByVal As Long),表示將執行緒掛起,直到一個客戶同管道連線為止。否則就立即返回;此時,如管道尚未連線,客戶同管道連線時就會觸發lpOverlapped結構中的事件對象。隨後,可用一個等待函式來監視連線
Windows NT
註解
可用這個函式將一個管道換成同另一個客戶連線,但首先必須用DisconnectNamedPipe函式斷開同當前進程的連線
注意
如果你是以非阻塞方式使用該函式,也就是說設定了參數lpOverlapped,就必須使你傳入lpOverlapped指針有效,直到異步連線成功(不是函式返回)。否則在異步連線成功時會產生緩衝區溢出。