Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Introduction

Cet article décrit un problème dans lequel uneexception n se produit lorsque plusieurs threads appellent la fonction d’exécution « atexit » C en même temps dans Windows Embedded Compact 7. Une mise à jour est disponible pour résoudre ce problème. Avant d’installer cette mise à jour, toutes les mises à jour précédemment publiées pour ce produit doivent être installés.

Symptômes

Lorsque plusieurs threads appellent la fonction d’exécution atexit C en même temps dans Windows Embedded Compact 7, une exception peut se produire. L’exception se produit lorsque le code qui appelle la fonction atexit n’est pas sérialisé ou lorsque la fonction atexit est insérée par le compilateur.

Cause

Le problème se produit car la fonction atexit C-exécuter l’heure n’est pas thread-safe. Par conséquent, la table de la mémoire par la fonction est endommagée.

Résolution

Informations de mise à jour de logiciel

Une mise à jour logicielle prise en charge est désormais disponible auprès de Microsoft en tant que la mise à jour mensuelle de Windows Embedded Compact 7 datée de (juin 2017).

Remarque Ce Windows Embedded Compact 7 mise à jour mensuelle est disponible au téléchargement depuis le site Web de Microsoft Download Center suivant :

Windows Embedded Compact 7 mises à jour

Conditions préalables

Cette mise à jour est pris en charge que si toutes les mises à jour précédemment publiées pour ce produit ont également été installées.

Nécessite un redémarrage

Après avoir appliqué cette mise à jour, vous devez effectuer une génération complète de l’intégralité de la plateforme. Pour ce faire, utilisez une des méthodes suivantes :

  • Dans le menu Générer , cliquez sur Nettoyer la Solution, puis cliquez sur Générer la Solution.

  • Dans le menu Générer , cliquez sur Régénérer la Solution.

Vous n’êtes pas obligé de redémarrer l’ordinateur après avoir appliqué cette mise à jour de logiciel.

Mettre à jour les informations sur le remplacement

Cette mise à jour ne remplace pas d'autres mises à jour.

Informations sur les fichiers

Comme il s’agit d’une version complète d’onde. Presque tous les fichiers binaires sont affectés par cette version.

Les fichiers de code source suivants sont affectés par cette version ::

private\winceos\COREOS\core\corelibc\crtw32\startup\cexit.cpp
private\winceos\COREOS\core\corelibc\crtw32\startup\onexit.c

Plus d'informations

Dans un environnement multithread, les tables de fonctions de atexit peuvent être endommagés par un autre appel atexit en raison de la sécurité des threads non. Cela peut entraîner des exceptions et la corruption de la mémoire. La fonction atexit est utilisée pour enregistrer une routine qui sera exécutée lorsque le programme se ferme ou de décharge d’un fichier .dll. La faille dans la sécurité des threads peut entraîner la modification de cette routine de sortie et l’altération des tables fonction exit.

Références

Apprenez-en plus sur la terminologie que Microsoft utilise pour décrire les mises à jour logicielles.

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×