|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Administrateur de base de données Inscription : janvier 2012 Messages : 38 ![]() |
Salut a tous
je veux développer une application qui se lance après le démarrage de Windows et qui vient s'afficher dans la barre d'outils à coté de l'horloge merci d'avance |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 697 ![]() |
Pourquoi cela serait-il spécifique au langage de programmation?
- W
__________________
Architectures Post-Modernes |
|
|
00
|
|
|
#3 | ||
|
Membre confirmé
![]() Inscription : avril 2007 Messages : 239 ![]() |
Bonjour,
Voici un programme qui se lance et laisse une icone vers l'horloge. ceci nécessite wxpython et trois fichiers d'icones (à voir dans le code) Il faut donc mettre un raccourci du pyw dans le répertoire de démarrage pour qu'il se lance au démarrage de windows. Alex Code :
|
||
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Administrateur de base de données Inscription : janvier 2012 Messages : 38 ![]() |
Bonjour
il existe d'autre méthode a part celle qui utilise la bibliothèque wx? |
|
|
00
|
|
|
#5 |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2007 Messages : 1 771 ![]() |
Bonjour,
On peut le faire aussi avec la bibliothèque graphique PyQt4/Qt4 en utilisant QSystemTrayIcon. Si tu es intéressé, dis-le: je peux te montrer comment on fait.
__________________
Ne rien ranger permet d'observer la loi universelle d'entropie: l'inévitable convergence vers le chaos... Mes recettes python: http://www.jpvweb.com |
|
|
00
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Administrateur de base de données Inscription : janvier 2012 Messages : 38 ![]() |
bien sure que oui, il me faut cette astuce!
|
|
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() Administrateur de base de données Inscription : janvier 2012 Messages : 38 ![]() |
bien sure que oui, il me faut cette astuce!
j’espère que ce n'est pas compliqué. |
|
|
00
|
|
|
#8 | ||||||
|
Expert Confirmé
![]() Patrice BLANGARINTechnicien Help Desk, maintenance, réseau, système et + Inscription : juin 2006 Messages : 2 613 ![]() |
Bonjour,
Si ce n'est tkinter ou c'est plus dur ceci est aussi facilement réalisable avec les autre GUI. Un exemple récent avec PyQT. Mais tyrtamos nous montreras sans doute mieux. Pour le reste, comme le dit wiztricks, ceci dépend du système et non du langage. Il existe deux possibilités pour cela : Mettre un raccourci dans le répertoire Démarrer de l'utilisateur (ou de all users)(1). Avec Python le répertoire utilisateur se retrouve avec os.path.expanduser, un os.path.join vas permettre de créer le chemin et un os.path.isdir() de vérifier que le chemin existe. Voir os.path donc. Pour ce qui est du raccourci avec Python cela passe par win32com.client ou ctypes : Un exemple de wiztricks sur le sujet. Il existe un petit souci avec cette solution : L'UAC. La solution à ceci passe par les taches planifiées de Windows (voir un exemple ici). Et en Python ? Pour le raccourci vers schtasks /run /tn nom-tâche pas de souci avec l'exemple de wiztricks. Pour ce qui est de la création de la tâche je sais le faire en batch (2) mais pas avec win32 ou ctypes. Cela doit être possible mais il vas falloir attendre une autre réponse car je n'est pas de Windows pour tester. Pour le moment je proposerais de créer la tache avec subprocess tel qu'indiquer dans la FAQ. Pourquoi tout ceci ? Cela vas vous permettre d'activer/désactiver le lancement automatique de l'application à partir de son menu contextuel. Vérifier si la tache existe vas passer par la vérification de stdout de subprocess d'un schtasks /query et pour la vérification de l'existence du lien par os.path. La solution BDR : Cela passe par HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run. Pour Python c'est réalisable avec _winreg par exemple. @+ (1) XP : C:\Documents and Settings\$USER$\Menu Démarrer\Programmes\Démarrage Vista, Seven : C:\Users\$USER$\AppData\Roaming\Microsoft\Windows\Start Menu (ou menu démarrer)\Programs\Startup Sous Seven et Vista \Users\All Users\Start Menu est un point de jonction qui correspond à ProgramData\Microsoft\Windows\Start Menu. A étudier donc. (2) Un copier/coller rapide d'un batch pour l'exemple Code :
Code :
Code :
__________________
Merci d'utiliser le forum pour les questions techniques. |
||||||
|
|
00
|
|
|
#9 | ||
|
Expert Confirmé
![]() ![]() Inscription : décembre 2007 Messages : 1 771 ![]() |
Ce qui est compliqué, c'est d'apprendre à utiliser une bibliothèque graphique! Chacune a sa logique et ses instructions. Dans le choix que tu fais pour le tray, il vaudrait mieux que ce soit la bibliothèque que tu utilises d'habitude pour tes applications!
Admettons que c'est PyQt4. Voilà un code test qui fonctionne de la façon suivante: - au lancement, une fenêtre s'affiche, et cette fenêtre lance aussi une icone tray. On pourrait aussi faire que seule l'icone tray apparaisse et pas la fenêtre de l'application! - si on ferme la fenetre (croix en haut à gauche), en fait on désactive son affichage, mais la fenêtre reste active en mémoire. - si on clique sur l'icone tray, on active de nouveau l'affichage de la fenêtre. - pour supprimer en même temps la fenêtre et l'icone tray, il faut faire clic-droit sur l'icone tray, il apparait un menu, on choisit l'item "quitter" et on répond "oui" à la question. Pour que l'application soit lancée au démarrage de windows, il faut la lancer dans le répertoire "démarrage" de Windows. Pour ça, je pense qu'il faut mettre un raccourcis dans "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup" pour Windows 7. Pour que l'icone tray soit toujours visible à côté de l'horloge, il faut changer sa config: clic droit sur la barre des tâches => propriétés => zone de notification => bouton "personnaliser" => sélectionner l'icone => "afficher l'icone et les notifications". Bonus: on peut rendre l'application "standalone" avec cx_freeze, ce qui fait que l'application lancée sera un "exe". Voilà le code test: Code :
Je n'ai plus le temps maintenant: si tu as des questions, il faudra attendre ce soir pour la réponse!
__________________
Ne rien ranger permet d'observer la loi universelle d'entropie: l'inévitable convergence vers le chaos... Mes recettes python: http://www.jpvweb.com |
||
|
|
00
|
|
|
#10 | ||
|
Expert Confirmé
![]() Patrice BLANGARINTechnicien Help Desk, maintenance, réseau, système et + Inscription : juin 2006 Messages : 2 613 ![]() |
Un exemple rapide en gtk
Code :
__________________
Merci d'utiliser le forum pour les questions techniques. |
||
|
|
00
|
|
|
#11 |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2007 Messages : 1 771 ![]() |
Bonjour,
Cette question est "résolue", mais houma2001 pourrait-il dire quelle solution il a retenue?
__________________
Ne rien ranger permet d'observer la loi universelle d'entropie: l'inévitable convergence vers le chaos... Mes recettes python: http://www.jpvweb.com |
|
|
00
|
|
|
#12 |
|
Candidat au titre de Membre du Club
![]() Administrateur de base de données Inscription : janvier 2012 Messages : 38 ![]() |
Bonjour à tous
la 2eme solution me parait efficace, du moment que je ne maitrise pas pyqt je crois qu'il est tant de s'engager dans ce gui. merci beaucoup. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com