Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mailslots werden von drei spezialisierten Funktionen unterstützt: CreateMailslot, GetMailslotInfo und SetMailslotInfo. Diese Funktionen werden vom maillot-Server verwendet.
Im folgenden Codebeispiel wird die CreateMailslot-Funktion verwendet, um das Handle für ein Maillot mit dem Namen "sample_mailslot" abzurufen. Das Codebeispiel in Schreiben in ein Mailslot zeigt, wie die Clientanwendung in dieses Maillot schreiben kann.
#include <windows.h>
#include <stdio.h>
HANDLE hSlot;
LPCTSTR SlotName = TEXT("\\\\.\\mailslot\\sample_mailslot");
BOOL WINAPI MakeSlot(LPCTSTR lpszSlotName)
{
hSlot = CreateMailslot(lpszSlotName,
0, // no maximum message size
MAILSLOT_WAIT_FOREVER, // no time-out for operations
(LPSECURITY_ATTRIBUTES) NULL); // default security
if (hSlot == INVALID_HANDLE_VALUE)
{
printf("CreateMailslot failed with %d\n", GetLastError());
return FALSE;
}
else printf("Mailslot created successfully.\n");
return TRUE;
}
void main()
{
MakeSlot(SlotName);
}
Um ein Maillot zu erstellen, das von untergeordneten Prozessen geerbt werden kann, sollte eine Anwendung die SECURITY_ATTRIBUTES Struktur ändern, die als letzter Parameter von CreateMailslot übergeben wird. Dazu legt die Anwendung den bInheritHandle-Member dieser Struktur auf TRUE fest (die Standardeinstellung ist FALSE).