Bonjour, nouvel utilisateur du forum, et d'AutoIt, j'ai récemment créé quelques programmes que je souhaiterais améliorer. Je cherche à ce que mon script (fichier .exe) se lance automatiquement lorsqu'on ouvre le dossier le contenant. Si ce n'est pas clair, j'explique :
FOLDER contient SCRIPT.exe
J'aimerais que lors de l'ouverture de FOLDER, SCRIPT.exe se lance seul, un peu comme quand on insère certains CD avec des autoruns.
Est-ce possible ? J’ai épluché la doc et la liste des fonctions, mais je n'ai rien trouvé. Peut-être est-ce possible parallèlement à AutoIt, dans un autre langage ?
J'espère que quelqu'un pourra m'aider, merci d'avance. =)
[..] Lancement automatique du script
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
- Iste
- Niveau 11

- Messages : 1870
- Enregistré le : jeu. 04 déc. 2008 14:21
- Localisation : 76
- Status : Hors ligne
Re: Lancement automatique du script
oula, si c'etait possible j'imagine meme pas le nombre de virus qui exploiterais ca...
Mais sinon oui, tu peux faire un programme parralelle (en autoit ca devrait aller) qui lui serait toujours actif et se chargerait de lancer ton .exe en le voyant. Bon, maintenant je sais pas trop comment faire pour recuperer les info d'une fenetre windows, notament, savoir si on est en train de regarder un dossier, et les noms des fichier si trouvant..
Mais essaye de voir avec Au3Info.exe
Tu dois pouvoir recuperer les info des fenetre ouverte -> savoir si il sagit d'un dossier -> recuperer l'adresse du dossier dans la barre d'adresse -> verifier quel fichiers se trouve dans ce dossier -> lancer l'exe si il y est !
Plus facile a dire qu'a faire, mais tu peux commencer par voir par là !
bonne chance
Mais sinon oui, tu peux faire un programme parralelle (en autoit ca devrait aller) qui lui serait toujours actif et se chargerait de lancer ton .exe en le voyant. Bon, maintenant je sais pas trop comment faire pour recuperer les info d'une fenetre windows, notament, savoir si on est en train de regarder un dossier, et les noms des fichier si trouvant..
Mais essaye de voir avec Au3Info.exe
Tu dois pouvoir recuperer les info des fenetre ouverte -> savoir si il sagit d'un dossier -> recuperer l'adresse du dossier dans la barre d'adresse -> verifier quel fichiers se trouve dans ce dossier -> lancer l'exe si il y est !
Plus facile a dire qu'a faire, mais tu peux commencer par voir par là !
bonne chance
Signez ici
Re: Lancement automatique du script
Arf c'est ce que je pensais. Si j'utilise ta méthode, le problème reste le même, j'ai à double cliquer sur un programme, même s'il n'est pas au même endroit, certes.Iste a écrit :oula, si c'etait possible j'imagine meme pas le nombre de virus qui exploiterais ca...
C'est effectivement par soucis de sécurité que Windows ne le permet pas (comme un autorun sur une clé usb). Je vais chercher un petit peu sur cette voie là encore, mais mes espoirs s'amenuisent.
Quoi qu'il en soit, merci pour ta réponse =)
-
GaRydelaMer
- Niveau 7

- Messages : 450
- Enregistré le : mer. 18 mars 2009 22:12
- Localisation : Montpellier
- Status : Hors ligne
Re: [..] Lancement automatique du script
Bonsoir
autre idée tu installes un programme qui va modifier la base de registre
HKEY_CLASSES_ROOT\Folder
dans cette clé il doit être possible d'exécuter un programme qui lui va verifier si ton exe est dedans
Oui tu le lances
Non tu explores le dossier.
Tu peut même créer une liste de programme à chercher et lancer.
autre idée tu installes un programme qui va modifier la base de registre
HKEY_CLASSES_ROOT\Folder
dans cette clé il doit être possible d'exécuter un programme qui lui va verifier si ton exe est dedans
Oui tu le lances
Non tu explores le dossier.
Tu peut même créer une liste de programme à chercher et lancer.
Re: [..] Lancement automatique du script
Ah nouvel espoir, je testerai ça dans les jours à venir, mais je doute d'avoir les droits requis pour toucher à a base de registre. Car oui, j'ai oublié de préciser, je ne suis que simple user sur la machine où je veux lancer ce script, et pas admin.
- Iste
- Niveau 11

- Messages : 1870
- Enregistré le : jeu. 04 déc. 2008 14:21
- Localisation : 76
- Status : Hors ligne
Re: [..] Lancement automatique du script
mais mais mais, ton script qui verifi, il suffit de le placer dans Démarrage, et il se lancera en meme temps que ta session 
Le dossier est dans Démarer ->Tout les programmes -> Démarrage. Tout ce que tu met la dedant sera auto-executé, et ca, meme un simple user doit pouvoir le faire
j'essaye de voir ce que je peux faire avec WinGetText(), mais cest pas trop mon domaine
Edit :
Ce petit bout de code verifi si l'exe est dans chaque dossier ouvert dans une fenetre (du moins, chez moi, car je connais pas trop les CLASS ou autre ^^')
Sauf que, ben... il le fait en boucle... et non pas a l'ouverture du dossier...
m'enfin, ca prouve que quelque chose est possible
Le dossier est dans Démarer ->Tout les programmes -> Démarrage. Tout ce que tu met la dedant sera auto-executé, et ca, meme un simple user doit pouvoir le faire
j'essaye de voir ce que je peux faire avec WinGetText(), mais cest pas trop mon domaine
Edit :
Ce petit bout de code verifi si l'exe est dans chaque dossier ouvert dans une fenetre (du moins, chez moi, car je connais pas trop les CLASS ou autre ^^')
Code : Tout sélectionner
While 1
$a = WinList ("[CLASS:CabinetWClass]","FolderView")
For $i = 1 to $a[0][0]
MsgBox ("","",WinGetText ($a[$i][1]))
$v = StringSplit (WinGetText ($a[$i][1]),@CRLF)
If FileExists ($v[1]&"\SCRIPT.exe") Then MsgBox ("","","t'as ouvert une fenetre et dedans ya l'exe")
Next
Sleep(1000)
WEndm'enfin, ca prouve que quelque chose est possible
Signez ici

