Maison > développement back-end > C++ > Comment puis-je déterminer l'architecture (x86 ou x64) d'une DLL native à l'aide du code managé ?

Comment puis-je déterminer l'architecture (x86 ou x64) d'une DLL native à l'aide du code managé ?

Barbara Streisand
Libérer: 2024-12-28 03:54:08
original
598 Les gens l'ont consulté

How Can I Determine the Architecture (x86 or x64) of a Native DLL Using Managed Code?

Détermination de l'architecture d'une DLL native en code managé

Pour déterminer l'architecture (x64 ou x86) d'une DLL native, vous pouvez utilisez l’en-tête PE. Ces informations sont essentielles pour que le chargeur du système d'exploitation exécute correctement la DLL.

Une option pour extraire ces données consiste à utiliser l'utilitaire DUMPBIN. Utilisez l'indicateur /headers ou /all, et le premier en-tête de fichier répertorié fournira les informations sur l'architecture. Voici un exemple :

DLL 64 bits :

dumpbin /headers cv210.dll
Microsoft (R) COFF/PE Dumper Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file cv210.dll

PE signature found

File Type: DLL

FILE HEADER VALUES
            8664 machine (x64)
               6 number of sections
        4BBAB813 time date stamp Tue Apr 06 12:26:59 2010
               0 file pointer to symbol table
               0 number of symbols
              F0 size of optional header
            2022 characteristics
                   Executable
                   Application can handle large (>2GB) addresses
                   DLL
Copier après la connexion

DLL 32 bits :

dumpbin /headers acrdlg.dll
Microsoft (R) COFF/PE Dumper Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file acrdlg.dll

PE signature found

File Type: DLL

FILE HEADER VALUES
             14C machine (x86)
               5 number of sections
        467AFDD2 time date stamp Fri Jun 22 06:38:10 2007
               0 file pointer to symbol table
               0 number of symbols
              E0 size of optional header
            2306 characteristics
                   Executable
                   Line numbers stripped
                   32 bit word machine
                   Debug information stripped
                   DLL
Copier après la connexion

Pour simplifier le processus, utilisez find comme suit :

dumpbin /headers cv210.dll |find "machine"
        8664 machine (x64)
Copier après la connexion

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