Maison > développement back-end > C++ > le corps du texte

Comment obtenir par programme la version d'un fichier DLL ou EXE en C/C ?

Susan Sarandon
Libérer: 2024-10-30 19:57:02
original
956 Les gens l'ont consulté

How to Programmatically Get the Version of a DLL or EXE File in C/C  ?

Comment obtenir la version d'un fichier DLL ou EXE par programme

Obtenir les versions de produit et de fichier d'un fichier DLL ou EXE est un aspect crucial du développement de logiciels. Pour accomplir cela en C ou C à l'aide des API natives Win32, suivez ces étapes :

  1. Utilisez l'API GetFileVersionInfo :

    Cette fonction permet d'accéder à informations de version associées au fichier spécifié.

  2. Exemple d'implémentation :

    Le code suivant montre comment utiliser l'API GetFileVersionInfo pour récupérer les numéros de version :

    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)
                    {
                        // DWORD is always 32 bits, so first two revision numbers
                        // come from dwFileVersionMS, last two come from dwFileVersionLS
                        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;
    }
    Copier après la connexion

En tirant parti de l'API GetFileVersionInfo, vous pouvez récupérer efficacement les informations de version des fichiers DLL ou EXE, vous permettant ainsi d'effectuer une vérification de version et d'autres tâches connexes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!