[Ex] Protocole autoit: (pour URL)

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
Avatar du membre
MClaveau
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 28
Enregistré le : ven. 08 févr. 2008 22:11
Status : Hors ligne

[Ex] Protocole autoit: (pour URL)

#1

Message par MClaveau »

'soir !

Un protocole-URL (comme mailto: callto: ftp: http: ), mais qui lance une commande. Il s'appelle autoit:


Installation en quatre étapes :


1): compiler ce script, avec le nom de fichier argraw.exe ; ensuite, le copier dans C:\

Code : Tout sélectionner

#NoTrayIcon
$arg=$CmdLineRaw
msgbox(0,"$CmdLineRaw",$arg, 20)
Exit

2): lancer ce script (c'est un script d'installation):

Code : Tout sélectionner

$name="autoit"
$command="C:\argraw.exe"

$tkey="HKEY_CLASSES_ROOT\"&$name
RegWrite($tkey)
sleep(10)
RegWrite($tkey,"","REG_SZ","URL: "&$name&" protocol")
sleep(10)
RegWrite($tkey,"URL Protocol","REG_SZ","")
sleep(10)

RegWrite($tkey&"\shell")
sleep(10)
RegWrite($tkey&"\shell\open")
sleep(10)
RegWrite($tkey&"\shell\open\command")
sleep(10)
RegWrite($tkey&"\shell\open\command","","REG_SZ",'"'&$command&'" %1')
sleep(10)

MsgBox(0,"Terminé","AutoIt protocol est prêt à fonctionner.",2)
Exit

3): Créer une page HTML, qui doit contenir cette ligne :

Code : Tout sélectionner

<a href='autoit: AAA bbb "CCC ddd eee" fff'>AutoIt_Protocol_Link</a>

4): Lancer cette page HTML dans Internet-Explorer ; puis cliquer sur le lien.



Conclusion: Maintenant, il est possible de lancer une commande sur un poste de travail, à partir d'un lien dans une page HTML ou HTA.
Il est juste nécessaire d'avoir installé, comme indiqué ci-dessus.

C'est juste un exemple (à adapter) pour montrer le principe de fonctionnement.









-
Modifié en dernier par Tlem le sam. 13 déc. 2008 10:50, modifié 2 fois.
Raison : Ajout de la balise [Ex] dans le titre.
@-salutations (pas de messages perso ; merci)
--

Michel Claveau
Avatar du membre
arrkhan
Niveau 8
Niveau 8
Messages : 528
Enregistré le : sam. 17 nov. 2007 03:30
Status : Hors ligne

Re: [Ex] Protocole autoit: (pour URL)

#2

Message par arrkhan »

En effet, ca peut etre interressant, mais je n'arrive pas a lancer de commandes, y aurait il moyen d'avoir un tit exemple concret ? (ou alors suis pas bien reveillé ^^)
Firefox2
Niveau 2
Niveau 2
Messages : 23
Enregistré le : lun. 31 mars 2008 20:28
Status : Hors ligne

Re: [Ex] Protocole autoit: (pour URL)

#3

Message par Firefox2 »

Salut !

Je pense que c'est bien trouvé comme idée et que ça pourrait être utile mais il manque la vraie utilité qui serait de pouvoir vraiment exécuter le script passé en paramètre plutôt que de juste faire une simple MsgBox()

J'ai adapté le script à compiler en ça:

Code : Tout sélectionner

#NoTrayIcon
#include <GUIConstants.au3>
#include <Array.au3>

$com = $CmdLine
$com[1] = StringReplace($com[1], "autoit:", "", 1)
$arg = _ArrayToString($CmdLine, @LF, 1)
$arg = StringReplace($arg, "autoit:", "", 1)
$link = GUICreate("AutoIt Link", 330, 95)
GUICtrlCreateLabel("Souhaitez-vous vraiment éxécuter le script suivant ?", 40, 10)
$voir = GUICtrlCreateButton("Cliquer ici pour &afficher le script", 10, 30, 310)
$oui = GUICtrlCreateButton("&OUI", 10, 60, 150)
$non = GUICtrlCreateButton("&NON", 170, 60, 150)
GUISetState()

While Sleep(10)
    
    $msg = GUIGetMsg()
    
    Select
        
    Case $msg = $voir
        MsgBox(64, "Script", $arg)
        
    Case $msg = $oui
        GUIDelete()
        For $i = 1 To $com[0]
            Execute($com[$i])
        Next
        Exit
        
    Case $msg = $non
        Exit
        
    Case $msg = $GUI_EVENT_CLOSE
        Exit
        
    EndSelect
    
WEnd
 
Je trouve que c'est plus pratique ;)
(et les commandes seraient de la sorte autoit:"test('ah', 'oh')" "test2('re ah', 're oh')")

Sinon, bravo pour le script du registre :]
tolf
Niveau 7
Niveau 7
Messages : 318
Enregistré le : ven. 15 févr. 2008 12:25
Localisation : Paris
Status : Hors ligne

Re: [Ex] Protocole autoit: (pour URL)

#4

Message par tolf »

Et si on veut désinstaller ce qui a été installé, comment fait-on SVP ?
Lisez la documentation d'AutoIt en français (et participez svp :mrgreen:) !

Mes UDF :
[/i][/b]
Firefox2
Niveau 2
Niveau 2
Messages : 23
Enregistré le : lun. 31 mars 2008 20:28
Status : Hors ligne

Re: [Ex] Protocole autoit: (pour URL)

#5

Message par Firefox2 »

Je crois que c'est juste ça:

Code : Tout sélectionner

RegDelete("HKEY_CLASSES_ROOT\autoit")
Répondre