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函数断开同当前进程的连接

Top