c++ Runtime Error sur ICONE SYSTRAY
Bonjour à vous.
J'ai un problème avec une nouvelle application.
A un moment donné, j'utilise la fonction SysIconeAjoute comme suit :
Code:
1 2 3
|
SysIconeAjoute("icone_systray.ico","Afficher_APPLI","Application en cours.....","checker_evenement_souris")
FenEtat(FEN_MAIN,Invisible) |
Voici la fonction checker_evenement_souris :
Code:
1 2 3 4 5 6 7
|
PROCEDURE checker_evenement_souris(action_souris)
SI action_souris = 515 ALORS // Si l'action sur le systray est undouble-clic gauche...
FenEtat(FEN_MAIN,Actif)
FenEtat(FEN_MAIN,DessusTout)
SysIconeSupprime
FIN |
Cela marche plutôt bien...
Par contre, je lance ce programme au démarrage de l'ordinateur via un shortcut du menu démarrer. Ce shortcut a un paramètre spécial "réduit" qui permet à l'appli de démarrer directement dans le systray...
Et c'est là ou se pose le problème. L'icône est bien dans le systray mais quasiment systématiquement dès qu'on clique dessus :
MICROSOFT VISUAL C++ RUNTIME LIBRARY
Runtime error !
This application has requested....................
Que faire ? :cry:
P.S. : Je précise que cela fait la même chose sur 3 postes différents...
Créer un fichier de trace pour voir où l'erreur se déclenche
Bonjour,
Si la proposition faite par jurassic pork ne fonctionne pas, alors il te faudra peut être déboguer l'exécution du code de la procédure checker_evenement_souris() pour voir où l'erreur se déclenche.
Je te propose donc de créer soit un fichier de trace, soit un log d'exécution.
Pour le fichier de trace c'est simple:
• Tu ajoutes des fonctions Trace() entre chaque ligne que tu veux tracer, avec un petite texte qui t'aidera à te repérer.
• Pour que les messages de trace soient enregistrés dans un fichier, tu dois au préalable exécuter la fonction TraceDébut() avec l'option trFichier.
• Pour faire plus propre, tu peux terminer par un TraceFin().
Des liens utiles...
:fleche: Pour la mise en œuvre du fichier de trace: Déboguer sans le débogueur.
:fleche: Une alternative intéressante: utiliser le Log d'exécution.
Bon courage. ;)
_