Fichier ini

cs_byters Messages postés 8 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 8 décembre 2009 - 12 déc. 2006 à 19:11
fdier Messages postés 7 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 14 décembre 2006 - 14 déc. 2006 à 09:39
Bonjour j'ai un petit programme qui ce lance au demarrage de windows mais pour qu'il puisse démarrer correctement dans la barre des taches il faut le fermé manuellement de la barre des taches pour qu'il puisse ce re ouvrire dans la barre des taches comme puis je faire pour le fermer automatiquement à la fermeture de windows. Si j'oublis de le fermer manuellement je suis obligé de supprimer le fichier ini qui ce crait au démarrage.

Merci pour vos renseignements

Bruno

8 réponses

Dolphin Boy Messages postés 630 Date d'inscription vendredi 5 mai 2006 Statut Membre Dernière intervention 17 février 2007
12 déc. 2006 à 21:47
Salut,
Je ne comprends pas : c'est une tâche automatique ? un service ? un exe dans le démarrage de Windows ?
C'est un peu flou.
0
cs_byters Messages postés 8 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 8 décembre 2009
12 déc. 2006 à 22:02
Excusez moi
C'est un Petit logiciel qui ce met dans la barre des taches a chaque demarrage de windows. Quand on y fait un clic droit dessus on peut l'ouvrir . 
A son premier demarrage il crait un fichier ini .
Si je quitte windows sans le fermer manuellement depuis la barre des taches au prochain demarrage c'est la fenetre du soft qui souvre sur le bureau mais il ne s'ouvre plus dans la barre des taches. Pour qu'il puisse redemarrer dans la barre des taches je suis obligé de supprimer le fichier ini.

Avez vous une solution ?

Merci 
0
Dolphin Boy Messages postés 630 Date d'inscription vendredi 5 mai 2006 Statut Membre Dernière intervention 17 février 2007
12 déc. 2006 à 22:39
Si ce n'est pas toi qui a créé ce "Petit logiciel",  je te conseille de contacter son créateur. Ici, on ne pourra t'aider que si c'est ton propre logiciel.
Donc, si c'est ton propre logiciel, il y a de nombreux exemples sur le site (cherche avec systray).
0
fdier Messages postés 7 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 14 décembre 2006
13 déc. 2006 à 09:36
Bonjour,

Je suis l'auteur de ce logiciel.
En fait, il écrit des données essentielles dans un fichier ini lors de sa fermeture.
Si ces données ne sont pas écrites, il ne pourra pas démarrer correctement.
Le problème est le suivant : comme il est dans le systray, si l'utilisateur éteint Windows sans le fermer manuellement, il ne peut écrire ses fameuses données.
Il me faudrait donc surveiller la fermeture de Windows...

Merci.

Didier Fontaine
http://www.areopage.net/instantor.html (sources disponibles)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
linasteph Messages postés 153 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 juillet 2009 1
13 déc. 2006 à 10:34
Salut,

lorsqu'il est dans le systray est-ce que la fenêtre de l'application est cachée ou n'est pas chargée?
Si elle est cachée essaie d'utiliser l'évènement Terminate ou Query Unload de la form pour écrire tes données.
Sinon tu peux charger une fenêtre cachée qui ne servirait qu'à tester la fermeture de ton appli
0
fdier Messages postés 7 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 14 décembre 2006
13 déc. 2006 à 11:08
Bonjour,

En fait je me sers déjà de l'événement Query Unload pour masquer (rendre invisible) la feuille principale.
Par contre je vais essayer l'événement Terminate (je ne le connaissais pas).
En tout cas merci !

Didier
0
Dolphin Boy Messages postés 630 Date d'inscription vendredi 5 mai 2006 Statut Membre Dernière intervention 17 février 2007
13 déc. 2006 à 20:41
linasteph a raison pour l'évènement Terminate mais il faut savoir que cet évènement n'est déclenché qu'en cas de sortie "propre".
Dans ton cas ça veut dire que, s'il y a un arrêt du micro sans passer par "Démarrer/Arrêter" (plantage avec obligation d'éteindre le micro sauvagement, coupure d'électricité, ...), l'évènement n'est pas déclenché (enfin dixit Microsoft).
Perso, j'utilise l'API Shell_NotifyIcon pour créer, killer, ...
Si tu utilises la même API, je crois que c'est plutôt dans le démarrage de ton appli qu'il y a un problème (voire à la fin) enfin, dans ce que tu lis et écris dans le .ini et dans ce que tu fais faire à ton appli suivant ce qu'elle lis dans le .ini.
Tu peux nous montrer ton .ini et ce que ton appli fait en fonction de ça ?
0
fdier Messages postés 7 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 14 décembre 2006
14 déc. 2006 à 09:39
Effectivement, j'ai essayé, l'événement Terminate ne se déclenche pas.

Mon problème est le suivant:
- au démarrage de l'ordinateur, l'appli crée une instance dans le Systray et affiche une info bulle pour dire qu'il est là. Un clic dessus l'affiche (le rend visible), tandis que le fermer (événement Query Unload) équivaut à le rendre invisible.
- j'ai remarqué que lorsque je clique sur l'icone, l'appli me crée une autre instance dans le Systray (et pas moyen de comprendre pourquoi !)
- j'ai donc créé un fichier ini qui en gros sert à dire : si c'est ta première ouverture, crée l'icone dans le Systray et charge toi, sinon, pas besoin de t'ouvrir, mais juste de te rendre visible.
- le problème, vous l'avez compris, c'est qu'il faut que l'appli se ferme proprement, sinon le fichier ini ne contiendra pas la bonne info...
Voici les sources: http://www.areopage.net/instantor_pres/Instantor_sources.rar
Merci d'avance car je ne trouve vraiment pas !!!
0
Rejoignez-nous