Partager via


Fonction SetProcessDynamicEHContinuationTargets (processthreadsapi.h)

Définit les cibles de gestion dynamique des exceptions pour le processus spécifié.

Syntaxe

BOOL SetProcessDynamicEHContinuationTargets(
  HANDLE                                  Process,
  USHORT                                  NumberOfTargets,
  PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET Targets
);

Paramètres

Process

Handle du processus. Ce handle doit avoir le droit d’accès PROCESS_SET_INFORMATION . Pour plus d’informations, consultez Traiter les droits de sécurité et d’accès.

NumberOfTargets

Fournit le nombre d’objectifs de continuation de gestion dynamique des exceptions à définir.

Targets

Pointeur vers un tableau d’exceptions dynamiques gérant les cibles de continuation. Pour plus d’informations sur cette structure, consultez PROCESS_DYNAMIC_EH_CONTINUATION_TARGET.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError. Notez que même si la fonction échoue, une partie des cibles de continuation fournies peut avoir été traitée avec succès. L’appelant doit case activée les indicateurs dans chaque cible de continuation individuelle spécifiée via Des cibles pour déterminer si elle a été traitée avec succès.

Remarques

Si la protection de la pile appliquée au matériel en mode utilisateur est activée pour un processus, lors de l’appel d’API qui modifient le contexte d’exécution d’un thread tel que RtlRestoreContext et SetThreadContext, la validation est effectuée sur le pointeur d’instruction spécifié dans le nouveau contexte d’exécution. RtlRestoreContext est utilisé lors du déroulement de l’exception de gestion structurée des exceptions (SEH) pour décompresser dans le cadre cible qui contient le bloc et commencer à exécuter le __except code au niveau de la cible de continuation. Par conséquent, le système d’exploitation doit connaître les adresses d’instruction de toutes les cibles de continuation valides afin de permettre l’opération de déroulement via RtlRestoreContext. Pour les fichiers binaires compilés, la liste des cibles de continuation est générée par l’éditeur de liens et stockée dans l’image binaire. Pour le code dynamique, les cibles de continuation doivent être spécifiées à l’aide de SetProcessDynamicEHContinuationTargets.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
Serveur minimal pris en charge Windows 10 Build 20348
En-tête processthreadsapi.h