web-dev-qa-db-fra.com

Python - Aucun gestionnaire n'a pu être trouvé pour l'enregistreur "OpenGL.error"

D'accord, qu'est-ce que c'est et pourquoi cela se produit-il sur le serveur Win2003, mais pas sur WinXP.

Cela ne semble pas du tout affecter mon application, mais je reçois ce message d'erreur lorsque je ferme l'application. Et c'est ennuyeux (comme devraient l'être les messages d'erreur).

J'utilise pyOpenGl et wxPython pour faire les trucs graphiques. Malheureusement, je suis un programmeur C # qui a repris cette application Python, et j'ai dû apprendre Python pour le faire).

Je peux fournir le code et les numéros de version, etc., mais j'apprends toujours les trucs techniques, donc toute aide serait appréciée.

Python 2.5, wxPython et pyOpenGL

79
Paige Watson

Il semble qu'OpenGL essaie de signaler une erreur sur Win2003, mais vous n'avez pas configuré votre système où afficher les informations de journalisation.

Vous pouvez ajouter ce qui suit au début de votre programme et vous verrez les détails de l'erreur dans stderr.

import logging
logging.basicConfig()

Consultez la documentation sur le module logging pour obtenir plus d'informations de configuration, conceptuellement, il est similaire à log4J.

194
Kozyarchuk

La bonne façon pour se débarrasser de ce message consiste à configurer NullHandler pour l'enregistreur de niveau racine de votre bibliothèque (OpenGL).

3
anatoly techtonik

Après avoir ajouté la journalisation ci-dessus, j'ai pu voir que le problème était dû à la classe TConstants manquante, que j'excluais dans le fichier setup.py py2exe.

Après avoir supprimé les "Tconstants" de la liste des exclus, je n'ai plus eu de problème.

2
Paige Watson