Vérification de bogue 0x18 : REFERENCE_BY_POINTER

Le contrôle de bogue REFERENCE_BY_POINTER a la valeur 0x00000018. Cela indique que le décompte de références d’un objet est illégal pour l’état actuel de l’objet.

Important

Cette rubrique s’adresse aux développeurs. Si vous êtes un client qui a reçu un code d’erreur d’écran bleu lors de l’utilisation de votre ordinateur, consultez résoudre les erreurs d’écran bleu.

Paramètres REFERENCE_BY_POINTER

Paramètre Description

1

Type d’objet de l’objet dont le nombre de références est réduit.

2

Objet dont le nombre de références est réduit.

3

Réservé

4

Réservé

Cause

Le décompte de références d’un objet est illégal pour l’état actuel de l’objet. Chaque fois qu’un pilote utilise un pointeur vers un objet, le pilote appelle une routine du noyau pour augmenter de 1 le décompte de références de l’objet. Lorsque le pilote est exécuté à l’aide du pointeur, le pilote appelle une autre routine du noyau pour réduire le nombre de références d’une unité.

Les pilotes doivent correspondre aux appels aux routines qui augmentent (référence) et diminuent (déréférencent) le nombre de références. Ce contrôle de bogue est dû à une incohérence dans le décompte de références de l’objet. En règle générale, l’incohérence est provoquée par un pilote qui diminue le nombre de références d’un objet trop souvent, en effectuant des appels supplémentaires qui déréférencent l’objet. Ce contrôle de bogue peut se produire parce que le décompte de références d’un objet passe à zéro alors qu’il existe encore des handles ouverts à l’objet. Cela peut également se produire lorsque le décompte de références de l’objet descend sous zéro, qu’il y ait ou non des handles ouverts à l’objet.

Résolution

Assurez-vous que le pilote correspond aux appels aux routines qui augmentent et diminuent le décompte de références de l’objet. Assurez-vous que votre pilote n’effectue pas d’appels supplémentaires aux routines qui déréférencent l’objet (voir le paramètre 2).

Vous pouvez utiliser un débogueur pour faciliter l’analyse de ce problème. pour plus d’informations, consultez analyse des vidages sur incident à l’aide des débogueurs Windows (WinDbg). L’extension ! analyze Debug affiche des informations sur la vérification des bogues et peut être utile pour déterminer la cause racine.

Pour rechercher le descripteur et le nombre de pointeurs sur l’objet, utilisez la commande du débogueur d' objet ! .

KD > ! adresse d’objet

Address est l’adresse de l’objet spécifié dans le paramètre 2.

Vous pouvez également définir un point d’arrêt dans le code menant à ce code d’arrêt et tenter d’effectuer une seule étape en aval dans le code défaillant.

si vous n’êtes pas équipé pour utiliser le débogueur Windows pour résoudre ce problème, vous pouvez utiliser des techniques de dépannage de base.

  • recherchez dans le journal système observateur d’événements des messages d’erreur supplémentaires susceptibles de vous aider à identifier l’appareil ou le pilote à l’origine de ce contrôle de bogue.

  • Si un pilote est identifié dans un message de vérification d’erreur, désactivez-le ou contactez le fabricant pour obtenir les mises à jour.

  • Vérifiez que les nouveaux matériels installés sont compatibles avec la version installée de Windows. par exemple, vous pouvez obtenir des informations sur le matériel requis à Windows 10 spécifications.

  • Pour obtenir des informations générales supplémentaires sur la résolution des problèmes, consultez données d’écran bleues.