Partager via


Fonction SplitSymbols (imagehlp.h)

Supprime les symboles de l’image spécifiée.

Syntaxe

BOOL IMAGEAPI SplitSymbols(
  [in]  PSTR  ImageName,
  [in]  PCSTR SymbolsPath,
  [out] PSTR  SymbolFilePath,
  [in]  ULONG Flags
);

Paramètres

[in] ImageName

Nom de l’image à partir de laquelle fractionner les symboles.

[in] SymbolsPath

Sous-répertoire pour le stockage des symboles. Ce paramètre est facultatif.

[out] SymbolFilePath

Nom du fichier de symboles généré. Ce fichier a généralement une extension .dbg.

[in] Flags

Informations à fractionner de l’image. Ce paramètre peut être égal à zéro ou à une combinaison des valeurs suivantes.

Valeur Signification
SPLITSYM_EXTRACT_ALL
0x00000002
En règle générale, une image avec les symboles séparés contient toujours un répertoire de débogage MISC avec le nom du fichier de symboles. Par conséquent, le débogueur peut toujours trouver les symboles. L’utilisation de cet indicateur supprime ce lien. Le résultat final est similaire à l’utilisation du commutateur -debug:none sur l’éditeur de liens Microsoft.
SPLITSYM_REMOVE_PRIVATE
0x00000001
Cela supprime les informations symboliques CodeView privées lors de la génération du fichier de symboles.
SPLITSYM_SYMBOLPATH_IS_SRC
0x00000004
Le chemin d’accès au fichier de symboles contient un autre chemin d’accès pour localiser le fichier .pdb.

Valeur retournée

Si la fonction réussit, la valeur de retour est TRUE.

Si la fonction échoue, la valeur de retour est FALSE. Pour récupérer des informations d’erreur étendues, appelez GetLastError.

Notes

La fonction SplitSymbols doit être utilisée lors de la suppression des symboles d’une image. Il crée un fichier de symboles que tous les débogueurs compatibles comprennent. Le format est défini dans WinNT.h et se compose d’un en-tête d’image, suivi du tableau d’en-têtes de section, des informations FPO et de toutes les informations symboliques de débogage de l’image.

Si le paramètre SymbolsPath a la valeur NULL, le fichier de symboles est stocké dans le répertoire où l’image existe. Sinon, il est stocké dans le sous-répertoire sous SymbolsPath qui correspond à l’extension de l’image. L’utilisation de cette méthode réduit les risques de collision de fichier de symboles. Par exemple, les symboles de myapp.exe se trouveront dans le répertoire SymbolsPath\exe et les symboles de myapp.dll se trouveront dans le répertoire SymbolsPath\dll.

Toutes les fonctions ImageHlp, telles que celle-ci, sont à thread unique. Par conséquent, les appels de plusieurs threads à cette fonction entraîneront probablement un comportement inattendu ou une altération de la mémoire. Pour éviter cela, vous devez synchroniser tous les appels simultanés de plusieurs threads vers cette fonction.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête imagehlp.h
Bibliothèque Imagehlp.lib
DLL Imagehlp.dll

Voir aussi

Fonctions ImageHlp