OpenFileMappingA-Funktion (winbase.h)
Öffnet ein benanntes Dateizuordnungsobjekt.
Syntax
HANDLE OpenFileMappingA(
[in] DWORD dwDesiredAccess,
[in] BOOL bInheritHandle,
[in] LPCSTR lpName
);
Parameter
[in] dwDesiredAccess
Der Zugriff auf das Dateizuordnungsobjekt. Dieser Zugriff wird auf alle Sicherheitsdeskriptoren für das Zieldateizuordnungsobjekt überprüft. Eine Liste der Werte finden Sie unter Dateizuordnungssicherheit und Zugriffsberechtigungen.
[in] bInheritHandle
Wenn dieser Parameter TRUEist, kann ein prozess, der von der CreateProcess--Funktion erstellt wurde, das Handle erben; andernfalls kann der Handle nicht geerbt werden.
[in] lpName
Der Name des zu öffnenden Dateizuordnungsobjekts. Wenn ein geöffnetes Handle für ein Dateizuordnungsobjekt anhand dieses Namens vorhanden ist und der Sicherheitsdeskriptor für das Zuordnungsobjekt nicht mit dem dwDesiredAccess-Parameter in Konflikt steht, ist der Öffnenvorgang erfolgreich. Der Name kann über ein Präfix "Global\" oder "Local\" verfügen, um ein Objekt im globalen oder Sitzungsnamespace explizit zu öffnen. Der Rest des Namens kann ein beliebiges Zeichen mit Ausnahme des umgekehrten Schrägstrichs (\) enthalten. Weitere Informationen finden Sie unter Kernel Object Namespaces. Schnelle Benutzerumschaltung wird mithilfe von Terminaldienstesitzungen implementiert. Der erste Benutzer, der sich anmelden soll, verwendet Sitzung 0, der nächste Benutzer, bei dem sich angemeldet werden soll, Sitzung 1 usw. Kernelobjektnamen müssen den Richtlinien für Terminaldienste entsprechen, damit Anwendungen mehrere Benutzer unterstützen können.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein geöffnetes Handle für das angegebene Dateizuordnungsobjekt.
Wenn die Funktion fehlschlägt, ist der Rückgabewert NULL-. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.
Bemerkungen
Das Handle, das OpenFileMapping- zurückgegeben wird, kann mit jeder Funktion verwendet werden, die ein Handle für ein Dateizuordnungsobjekt erfordert.
Beim Ändern einer Datei über eine zugeordnete Ansicht wird der Zeitstempel der letzten Änderung möglicherweise nicht automatisch aktualisiert. Bei Bedarf sollte der Aufrufer SetFileTime- verwenden, um den Zeitstempel festzulegen.
Wenn sie nicht mehr benötigt wird, sollte der Aufrufer das von OpenFileMapping zurückgegebene Handle mit einem Aufruf von CloseHandle-freigeben.
In Windows Server 2012 wird diese Funktion von den folgenden Technologien unterstützt.
Technologie | Abgestützt |
---|---|
Server Message Block (SMB) 3.0-Protokoll | Ja |
SMB 3.0 Transparent Failover (TFO) | Ja |
SMB 3.0 mit Skalierungsdateifreigaben (SO) | Ja |
Freigegebenes Clustervolumedateisystem (CsvFS) | Ja |
Resilient File System (ReFS) | Ja |
Beispiele
Ein Beispiel finden Sie unter Creating Named Shared Memory.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | winbase.h (enthalten Windows.h, Memoryapi.h) |
Library | Kernel32.lib |
DLL- | Kernel32.dll |
Siehe auch
Speicherverwaltungsfunktionen