GetMailslotInfo

GetMailslotInfo

Retrieves information about the specified mailslot.

Mailslot,利用郵槽實現進程間通信。

基本介紹

  • 中文名:GetMailslotInfo
  • 外文名:無
  • 說明:獲取與一個郵路有關的信息
  • 參數:hMailslot Long
VB定義,VC定義,參數說明,

VB定義

Declare Function GetMailslotInfo Lib "kernel32" Alias "GetMailslotInfo" (ByVal hMailslot As Long, lpMaxMessageSize As Long, lpNextSize As Long, lpMessageCount As Long, lpReadTimeout As Long) As Long

VC定義

BOOL WINAPI GetMailslotInfo(
_In_HANDLE hMailslot,
_Out_opt_LPDWORD lpMaxMessageSize,
_Out_opt_LPDWORD lpNextSize,
_Out_opt_LPDWORD lpMessageCount,
_Out_opt_LPDWORD lpReadTimeout
);

參數說明

獲取與一個郵路有關的信息
返回值
Long,非零表示成功,零表示失敗。會設定GetLastError
參數表
參數 類型及說明
hMailslot Long,指定一個郵路的句柄, 由CreateMailslot創建
lpMaxMessageSize Long,指定一個長整數變數地址,用於裝載這個郵路的最大訊息長度
The maximum message size, in bytes, allowed for this mailslot. This value can be greater than or equal to the value specified in the cbMaxMsg parameter of the CreateMailslot function that created the mailslot. 這個參數可以為NULL。
lpNextSize Long,指定一個長整數變數地址,用於裝載下一條訊息的長度。如沒有訊息準備好,則可被為常數MAILSLOT_NO_MESSAGE。這個參數可以為NULL。
lpMessageCount Long,指定一個長整數變數地址,用於裝載郵路中準備好的訊息數量。這個參數可以為NULL。
lpReadTimeout Long,指定一個長整數變數地址,用於裝載郵路的默認閱讀逾時。這個參數可以為NULL。
使用郵槽通信的進程分為服務端和客戶端.
郵槽由服務端創建,在創建時需要指定郵槽名,創建後服務端得到郵槽的句柄.
在郵槽創建後,客戶端可以通過郵槽名打開郵槽,在獲得句柄後可以向郵槽寫入訊息.
郵槽通信是單向的,只有服務端才能從郵槽中讀取訊息,客戶端只能寫入訊息.
訊息是先入先出的,客戶端先寫入的訊息在服務端先被讀取.
郵槽除了在本機內進行進程間通信外,在主機間也可以通信.
但是在主機間進行郵槽通信,數據通過網路傳播時使用的是數據報協定(UDP),所以是一種不可靠的通信.
Note:須包含頭檔案 #include <windows.h>

    相關詞條

    熱門詞條

    聯絡我們