Maison >développement back-end >C++ >Comment obtenir par programme des informations sur la version des DLL et des EXE ?
Dans le domaine du développement logiciel, il devient souvent nécessaire de récupérer les informations de version associées aux bibliothèques de liens dynamiques ( DLL) et programmes exécutables (EXE). En utilisant les API natives Win32 accessibles via C ou C, les développeurs peuvent acquérir en toute transparence les versions de produit et de fichier de ces entités exécutables.
La clé pour déverrouiller les informations de version réside dans l'API GetFileVersionInfo. Cette fonction puissante remplit un tampon avec les données relatives au fichier DLL ou EXE spécifié. Explorons les subtilités de son utilisation :
Le code suivant L'exemple illustre l'application pratique de l'API GetFileVersionInfo :
<code class="python">DWORD verHandle = 0; UINT size = 0; LPBYTE lpBuffer = NULL; DWORD verSize = GetFileVersionInfoSize(szVersionFile, &verHandle); if (verSize != NULL) { LPSTR verData = new char[verSize]; if (GetFileVersionInfo(szVersionFile, verHandle, verSize, verData)) { if (VerQueryValue(verData, "\", (VOID FAR * FAR *)&lpBuffer, &size)) { if (size) { VS_FIXEDFILEINFO *verInfo = (VS_FIXEDFILEINFO *)lpBuffer; if (verInfo->dwSignature == 0xfeef04bd) { // Parse the file version into a four-part dotted string TRACE("File Version: %d.%d.%d.%d\n", (verInfo->dwFileVersionMS >> 16) & 0xffff, (verInfo->dwFileVersionMS >> 0) & 0xffff, (verInfo->dwFileVersionLS >> 16) & 0xffff, (verInfo->dwFileVersionLS >> 0) & 0xffff ); } } } } delete[] verData; }</code>
En conclusion, l'API GetFileVersionInfo fournit une solution complète pour obtenir par programme des informations de version à partir de DLL et d'EXE. En exploitant cette fonctionnalité, les développeurs peuvent automatiser les tâches de récupération de versions, garantissant ainsi la précision et l'efficacité de leurs efforts de développement logiciel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!