Je sais qu'il est possible de vérifier la quantité de RAM physique installée en utilisant GetPhysicallyInstalledSystemMemory
ou le nombre de RAM que le système d'exploitation peut voir en utilisant GlobalMemoryStatusEx
. Cependant, je me demande s'il n'y a aucun moyen de vérifier combien de ram un utilisateur a installé par slot. C'est-à-dire, être en mesure de dire par programme la différence entre 1x2GB de RAM et 2x1GB de RAM, vérifiant ainsi si l'ordinateur peut être facilement mis à jour via un logiciel. Idéalement, un moyen de vérifier cela sans .Net.Vérification des baies RAM (API Windows)
Répondre
Utilisez WMI pour rechercher Win32_PhysicalMemory. Regardez les propriétés Capacity et Bank Label.
MISE À JOUR: Vous n'avez pas besoin de .NET pour cela. Voir Creating a WMI Application Using C++ pour des exemples en C++
Passant en revue les docs MSDN pour les fonctions énumérées here, je vois que la fonction vérifie avec la table SMBIOS, qui est référencé par une norme here Il semble que vous pouvez en effet trouver les informations que vous cherchez dans le BIOS. Vous devrez peut-être installer un pilote pour obtenir cette information sur votre programme.
Bonne chance!
Sur Linux, je peux presque toujours trouver cette information avec dmidecode, qui analyse les tables DMI du BIOS. Il montre tous les emplacements de mémoire et ce qui est sur chacun d'eux, ainsi que d'autres informations intéressantes. Cependant, je ne sais pas comment obtenir les données DMI sur Windows.
Vous n'avez pas besoin WMI (évitez toujours WMI (lent)), ni tout conducteur (bien sûr) Utiliser Win32 standard SMB apis
Les propriétés ci-dessus et d'autres cherchent à être exactement les choses CPU-Z [ http://www.cpuid.com/cpuz.php] utiliserait. CPU-Z peut faire exactement ce que vous recherchez. –
Je pensais que WMI pouvait le faire, mais je suis sûr que WMI nécessite .net. – Brian
WMI Scriptomatic [http://www.microsoft.com/downloads/details.aspx?familyid=09dfc342-648b-4119-b7eb-783b0f7d1178&displaylang=en] est un bon point de départ pour lire les propriétés WMI avant de vous asseoir et d'écrire n'importe quel code. – bk1e