Fonction SymSetOptions (dbghelp.h)
Définit le masque d’options.
Syntaxe
DWORD IMAGEAPI SymSetOptions(
[in] DWORD SymOptions
);
Paramètres
[in] SymOptions
Options de symbole. Zéro est une valeur valide et indique que toutes les options sont désactivées. Les valeurs d’options sont combinées à l’aide de l’opérateur OR pour former une valeur d’options valide. Les valeurs valides sont les suivantes.
Valeur | Signification |
---|---|
|
Permet d’utiliser des symboles stockés avec des adresses absolues. La plupart des symboles sont stockés en tant que RVA à partir de la base du module. DbgHelp les traduit en adresses absolues. Certains symboles sont stockés en tant qu’adresse absolue. Ceux-ci ont des objectifs très spécialisés et ne sont généralement pas utilisés.
DbgHelp 5.1 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
Permet d’utiliser des symboles qui n’ont pas d’adresse. Par défaut, DbgHelp filtre les symboles qui n’ont pas d’adresse. |
|
Ne recherchez pas les symboles publics lors de la recherche de symboles par adresse ou lors de l’énumération de symboles, sauf s’ils n’ont pas été trouvés dans les symboles globaux ou dans l’étendue actuelle. Cette option n’a aucun effet avec SYMOPT_PUBLICS_ONLY.
DbgHelp 5.1 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
Toutes les recherches de symboles ne respectent pas la casse. |
|
Transmettez la sortie de débogage via OutputDebugString ou la fonction de rappel SymRegisterCallbackProc64 . |
|
Les symboles ne sont pas chargés tant qu’une référence n’est pas effectuée nécessitant le chargement des symboles. Il s’agit de la façon la plus rapide et la plus efficace d’utiliser le gestionnaire de symboles. |
|
Désactive la détection automatique des magasins de serveurs de symboles dans le chemin d’accès des symboles, même sans la désignation « SRV* », tout en conservant la compatibilité avec le comportement précédent.
DbgHelp 6.6 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
Ne chargez pas de fichier .pdb sans correspondance. Ne chargez pas les symboles d’exportation si tout le reste échoue. |
|
N’affichez pas les boîtes de dialogue système en cas de défaillance d’un média, comme l’absence de média dans un lecteur. Au lieu de cela, l’échec se produit silencieusement. |
|
Si un fichier non compressé et un fichier compressé sont disponibles, privilégiez le fichier compressé. Cette option est adaptée aux connexions lentes. |
|
Les symboles sont stockés dans le répertoire racine du magasin en aval par défaut.
DbgHelp 6.1 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
Ignorez les informations de chemin dans l’enregistrement CodeView de l’en-tête d’image lors du chargement d’un fichier .pdb. |
|
Ignorez le répertoire de l’image.
DbgHelp 6.1 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
N’utilisez pas le chemin spécifié par _NT_SYMBOL_PATH si l’utilisateur appelle SymSetSearchPath sans chemin valide.
DbgHelp 5.1 : Cette valeur n’est pas prise en charge. |
|
Lors du débogage sur Windows 64 bits, incluez tous les modules 32 bits. |
|
Désactivez les vérifications pour vous assurer qu’un fichier (.exe, .dbg.ou .pdb) est le fichier correct. Au lieu de cela, chargez le premier fichier situé. |
|
Charge les informations de numéro de ligne. |
|
Tous les symboles décorés C++ contenant le séparateur de symboles « : : » sont remplacés par « __ ». Cette option existe pour les débogueurs qui ne peuvent pas gérer l’analyse des noms de symboles C++ réels. |
|
Ne recherchez pas le chemin du symbole dans l’image lors du chargement des symboles d’un module si l’en-tête du module ne peut pas être lu.
DbgHelp 5.1 : Cette valeur n’est pas prise en charge. |
|
Empêche l’invite de validation à partir du serveur de symboles. |
|
Ne recherchez pas de symboles dans la table public. Cette option doit avoir peu d’effet, car il existe des copies des symboles publics dans la table globals.
DbgHelp 5.1 : Cette valeur n’est pas prise en charge. |
|
Empêche le chargement des symboles lorsque l’appelant examine les symboles dans plusieurs modules. Examinez uniquement le module dont les symboles ont déjà été chargés. |
|
Remplacez le magasin de niveau inférieur à partir du magasin de symboles.
DbgHelp 6.1 et versions antérieures : Cette valeur n’est pas prise en charge. |
|
N’utilisez pas de symboles privés. La version de DbgHelp fournie avec la version antérieure de Windows ne prend en charge que les symboles publics ; cette option fournit la compatibilité avec cette limitation.
DbgHelp 5.1 : Cette valeur n’est pas prise en charge. |
|
DbgHelp ne charge aucun serveur de symboles autre que SymSrv. SymSrv n’utilisera pas le magasin en aval spécifié dans _NT_SYMBOL_PATH. Une fois cet indicateur défini, il ne peut pas être effacé.
DbgHelp 6.0 et 6.1 : Cet indicateur peut être effacé. DbgHelp 5.1 : Cette valeur n’est pas prise en charge. |
|
Tous les symboles sont présentés sous forme non décorée.
Cette option n’a aucun effet sur les symboles globaux ou locaux, car ils sont stockés sans décoration. Cette option s’applique uniquement aux symboles publics. |
Valeur retournée
La fonction retourne le masque d’options en cours.
Notes
La valeur des options peut être modifiée n’importe quel nombre de fois lorsque la bibliothèque est utilisée par une application. La modification de l’option affecte tous les appels futurs au gestionnaire de symboles.
Pour obtenir le masque d’options actuelles, appelez la fonction SymGetOptions .
Toutes les fonctions DbgHelp, 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.
Exemples
Pour obtenir un exemple, consultez Initialisation du gestionnaire de symboles.
Spécifications
Plateforme cible | Windows |
En-tête | dbghelp.h |
Bibliothèque | Dbghelp.lib |
DLL | Dbghelp.dll |
Composant redistribuable | DbgHelp.dll 5.1 ou version ultérieure |