Partager via


OpenFileMappingA, fonction (winbase.h)

Ouvre un objet de mappage de fichiers nommé.

Syntaxe

HANDLE OpenFileMappingA(
  [in] DWORD  dwDesiredAccess,
  [in] BOOL   bInheritHandle,
  [in] LPCSTR lpName
);

Paramètres

[in] dwDesiredAccess

Accès à l’objet de mappage de fichiers. Cet accès est vérifié sur n’importe quel descripteur de sécurité sur l’objet de mappage de fichiers cible. Pour obtenir la liste des valeurs, consultez sécurité de mappage de fichiers et droits d’accès.

[in] bInheritHandle

Si ce paramètre est TRUE, un processus créé par la fonction CreateProcess peut hériter du handle ; sinon, le handle ne peut pas être hérité.

[in] lpName

Nom de l’objet de mappage de fichiers à ouvrir. S’il existe un handle ouvert pour un objet de mappage de fichiers par ce nom et que le descripteur de sécurité sur l’objet de mappage n’est pas en conflit avec le paramètre dwDesiredAccess, l’opération d’ouverture réussit. Le nom peut avoir un préfixe « Global\ » ou « Local\ » pour ouvrir explicitement un objet dans l’espace de noms global ou de session. Le reste du nom peut contenir n’importe quel caractère, à l’exception du caractère de barre oblique inverse (\). Pour plus d’informations, consultez espaces de noms d’objets noyau. Le basculement rapide des utilisateurs est implémenté à l’aide de sessions Terminal Services. Le premier utilisateur à se connecter utilise la session 0, l’utilisateur suivant pour se connecter utilise la session 1, et ainsi de suite. Les noms d’objets noyau doivent suivre les instructions décrites pour les services Terminal Services afin que les applications puissent prendre en charge plusieurs utilisateurs.

Valeur de retour

Si la fonction réussit, la valeur de retour est un handle ouvert pour l’objet de mappage de fichiers spécifié.

Si la fonction échoue, la valeur de retour est NULL . Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Le handle qui OpenFileMapping retourne peut être utilisé avec n’importe quelle fonction qui nécessite un handle pour un objet de mappage de fichiers.

Lors de la modification d’un fichier via une vue mappée, le dernier horodatage de modification peut ne pas être mis à jour automatiquement. Si nécessaire, l’appelant doit utiliser SetFileTime pour définir l’horodatage.

Lorsqu’il n’est plus nécessaire, l’appelant doit libérer le handle retourné par OpenFileMapping avec un appel à CloseHandle.

Dans Windows Server 2012, cette fonction est prise en charge par les technologies suivantes.

Technologie Supporté
Protocole SMB (Server Message Block) 3.0 Oui
Basculement transparent SMB 3.0 (TFO) Oui
SMB 3.0 avec partages de fichiers avec montée en puissance parallèle (SO) Oui
Cluster Shared Volume File System (CsvFS) Oui
Système de fichiers résilient (ReFS) Oui
 

Exemples

Pour obtenir un exemple, consultez Création d’unede mémoire partagée nommée .

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête winbase.h (include Windows.h, Memoryapi.h)
bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CreateFileMapping

fonctions de mappage de fichiers

Fonctions de gestion de la mémoire

partage de fichiers et de de mémoire