Articles avec le tag « Investigation de bugs »
17 articles portant le tag « Investigation de bugs », du plus récent au plus ancien.
-
Les applications qui cassent à la reprise de veille — événements d'alimentation et applications métier qui survivent à la reprise
Vous ouvrez le portable et les connexions de l'application métier sont coupées — la cause est une conception qui n'a pas prévu la veille. Cet article expliqu...
-
DllMain et le verrou du chargeur — la vraie raison pour laquelle on vous dit de « ne rien faire dans l'initialisation d'une DLL »
Pourquoi il ne faut pas appeler LoadLibrary ni synchroniser avec d'autres threads depuis DllMain. À partir des sources primaires, cet article explique le méc...
-
Ce qu'est vraiment « Ne répond pas » — comment Windows juge qu'une application est bloquée, et comment concevoir des applications qui ne le sont pas
Le « Ne répond pas » de Windows est un mécanisme dans lequel l'OS juge qu'une fenêtre n'a pas récupéré de message pendant 5 secondes et la remplace par une f...
-
Réveils parasites — pourquoi une variable de condition se réveille « sans notification » et comment attendre correctement sous Windows
Le wait d'une variable de condition peut revenir sans notification (réveil parasite). L'article explique, d'après l'implémentation Windows, pourquoi la spéci...
-
Bonnes pratiques du multithreading en pratique — édition Java : les usages à l'ère des threads virtuels
En Java, la bonne pratique consiste à ne jamais créer de threads directement, mais à s'appuyer sur ExecutorService et les threads virtuels. Cet article rasse...
-
Bonnes pratiques de multithreading en pratique — édition C++ : éliminer les accidents structurellement avec RAII et jthread
En C++, le multithreading est un monde où une course de données devient un comportement indéfini. Cet article couvre le piège du destructeur de std::thread, ...
-
Bonnes pratiques de multithreading en pratique — édition .NET : ce qu'il faut décider avant d'ajouter des threads
Un ensemble de bonnes pratiques de conception pour .NET/C# afin d'éviter que « démarrer un thread » ne fasse planter ou geler l'application de temps en temps...
-
Les profondeurs de l'E/S Windows (partie 6, dernière partie) — Pilotes filtres et minifiltres : pourquoi Procmon et les antivirus peuvent intercepter vos E/S
Dernier volet d'une série qui explique à l'aide de schémas les pilotes de filtre et les minifiltres de Windows. Nous y détaillons le Filter Manager et les al...
-
Les profondeurs de l'E/S Windows (partie 5) — Structure interne de NTFS : comprendre le système de fichiers à travers la MFT
Cinquième volet d'une série qui explique la structure interne de NTFS à l'aide de schémas. Nous y présentons la MFT et les enregistrements de fichiers, les f...
-
Les profondeurs de l'E/S Windows (partie 1) — Chaque lecture et écriture devient un IRP : la vue d'ensemble du système d'E/S
Premier volet d'une série qui explique le système d'E/S de Windows en partant de la base. Nous cartographions l'espace de noms de l'Object Manager, les trois...
-
La gestion d'incident ne s'arrête pas au rétablissement — Un modèle de postmortem (prévention de la récurrence) pour les petites équipes de développement
Traiter un incident comme terminé une fois corrigé et les excuses présentées garantit que vous le reproduirez. Cet article traduit le postmortem « blameless ...
-
Veille, mise en veille prolongée, Modern Standby et applications longue durée — concevoir pour éviter « ça s'était arrêté pendant la nuit »
Pourquoi une application Windows censée tourner en continu se retrouve « arrêtée quand on la consulte le matin » : différences entre la veille S3 classique, ...
-
Quand vous héritez d'un système sans code source ni documentation — Procédure pratique pour l'exploiter et le maintenir sans interruption
Ce guide présente la procédure pratique pour démarrer l'exploitation et la maintenance d'un système métier sans code source ni cahier des charges. Il couvre ...
-
MAX_PATH et les pièges des chemins et noms de fichiers Windows — la limite de 260 caractères, les noms réservés, les points de fin et la casse
Un tour d'horizon des limites de chemins et de noms de fichiers à l'origine du classique bug « fichier introuvable ». Cet article couvre le détail de MAX_PAT...
-
Les pièges des lecteurs réseau et des chemins UNC — Travailler avec un serveur de fichiers (dossier partagé) depuis une application métier
Cet article recense les problèmes classiques rencontrés lorsqu'une application métier écrit dans un dossier partagé ou le surveille : pourquoi une lettre de ...
-
Guide pratique de Process Monitor (ProcMon) — identifier en 10 minutes un « paramètre non pris en compte » ou un ACCESS DENIED
« J'ai corrigé le fichier de configuration, mais rien ne change » ; « ça marchait hier, mais ça ne démarre plus aujourd'hui » — avant de toucher au code sour...
-
Externalisation et développement sur mesure d'une application Windows : ce qu'il faut clarifier avant de se lancer
Avant de confier l'externalisation ou le développement sur mesure d'une application Windows, voici les points à clarifier : révision d'un logiciel existant, ...