创建邮箱

【勇芳软件工作室】汉化HomePreviousNext

邮件槽由三个专门功能支持:CreateMailslotGetMailslotInfoSetMailslotInfo.这些功能由邮箱服务器使用。

以下代码示例使用CreateMailslot函数来检索名为sample_mailslot的邮槽的句柄。

BOOL FAR PASCAL Makeslot(HWND hwnd, HDC hdc)

{

LPSTR lpszSlotName = "\\\\.\\mailslot\\sample_mailslot";

/ *邮箱空间句柄“hSlot1”全局声明。*/

hSlot1 = CreateMailslot(lpszSlotName,

0,/ *无最大消息大小* /

MAILSLOT_WAIT_FOREVER,/ *无超时读操作* /

(LPSECURITY_ATTRIBUTES) NULL); /* no security attributes */

if (hSlot1 == INVALID_HANDLE_VALUE) {

ErrorHandler(hwnd, "CreateMailslot"); /* local error handler */

return FALSE;

}

TextOut(hdc, 10, 10, "CreateMailslot successful.", 26);

return TRUE;

}

要创建可以由子进程继承的邮槽,应用程序应该更改作为最后一个参数CreateMailslot传递的SECURITY_ATTRIBUTES结构。为此,应用程序将此结构的bInheritHandle成员设置为TRUE(默认设置为FALSE)。