GetPhysicalInstalledSystemMemory, fonction (sysinfoapi.h)
Récupère la quantité de RAM installée physiquement sur l’ordinateur.
Syntaxe
BOOL GetPhysicallyInstalledSystemMemory(
[out] PULONGLONG TotalMemoryInKilobytes
);
Paramètres
[out] TotalMemoryInKilobytes
Pointeur vers une variable qui reçoit la quantité de RAM physiquement installée, en kilo-octets.
Valeur retournée
Si la fonction réussit, elle retourne TRUE et définit le paramètre TotalMemoryInKilobytes sur une valeur différente de zéro.
Si la fonction échoue, elle retourne FALSE et ne modifie pas le paramètre TotalMemoryInKilobytes . Pour obtenir des informations d’erreur étendues, utilisez la fonction GetLastError . Les erreurs courantes sont répertoriées dans le tableau suivant.
Code de retour | Description |
---|---|
|
Le paramètre TotalMemoryInKilobytes a la valeur NULL. |
|
Les données du BIOS de gestion du système (SMBIOS) sont incorrectes. |
Remarques
La fonction GetPhysicalInstalledSystemMemory récupère la quantité de RAM physiquement installée à partir des tables de microprogramme SMBIOS de l’ordinateur. Cela peut différer de la quantité signalée par la fonction GlobalMemoryStatusEx , qui définit le membre ullTotalPhys de la structure MEMORYSTATUSEX sur la quantité de mémoire physique disponible pour le système d’exploitation. La quantité de mémoire disponible pour le système d’exploitation peut être inférieure à la quantité de mémoire physiquement installée sur l’ordinateur, car le BIOS et certains pilotes peuvent réserver de la mémoire en tant que régions d’E/S pour les appareils mappés à la mémoire, ce qui rend la mémoire indisponible pour le système d’exploitation et les applications.
La quantité de mémoire physique récupérée par la fonction GetPhysicallyInstalledSystemMemory doit être égale ou supérieure à la quantité signalée par la fonction GlobalMemoryStatusEx ; si elle est inférieure, les données SMBIOS sont incorrectes et la fonction échoue avec ERROR_INVALID_DATA. Des données SMBIOS mal formées peuvent indiquer un problème avec l’ordinateur de l’utilisateur.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista avec SP1 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | sysinfoapi.h (inclure Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |