Page 1 sur 1

[R] Récupérer un lien qui n'est pas une page IE

Posté : sam. 27 juin 2009 18:46
par DJSIR
Bonjour. J'aimerais faire plusieurs choses avant tout.

1. Quand je navigue avec IE, j'aimerais que quand je clique sur un lien qui n'est pas une page mais un fichier, autoit le detecte et m'affiche par exemple une msgbox.

2. Après, je pense pouvoir me débrouiller tout seul pour télécharger le fichier grâce au lien récupéré.

Merci !

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mar. 30 juin 2009 00:54
par jumby
Votre idée m'a inspiré.
Voici mon script :
► Afficher le texte
Désolé si les variables sont carrément mal nommées, si les conditions foisonnent de partout ^^.

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mar. 30 juin 2009 16:16
par DJSIR
Marche pas chez moi, avec iE8, le titre des fênetres commencent par le nom suivient du titre du naviguateur. "Autoit Français * Répondre - Windows Internet Explorer"

Il faut revoir ton code.

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mar. 30 juin 2009 17:52
par jumby
Fonctionne parfaitement pour moi avec IE6 et IE8.

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mar. 30 juin 2009 18:39
par orax
J'ai testé sur http://www.7-zip.org/ et je crois que ça marche pour le ".exe" mais je ne n'ai aucune msgbox() avec le ".msi" (testé sous IE 8).

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mar. 30 juin 2009 18:54
par orax
D'après http://msdn.microsoft.com/en-us/library ... S.85).aspx

Avec ce code, si j'ai bien compris, $Cancel=True devrait annuler l'affichage de la boîte de dialogue mais ce n'est pas le cas. Je ne sais pas si c'est un problème lié à Autoit ou si je l'ai mal utilisé.
► Afficher le texte

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mar. 30 juin 2009 19:36
par jumby
Pour rajouter le support de l'extension .msi :

Il faut dresser une liste des extensions supportées par le script et changer la valeur de la boucle :

Local $extension[10] ; Entre crochet le nombre d'extension
$extension[0] = "rar"
$extension[1] = "zip"
$extension[2] = "exe"
$extension[3] = "avi"
$extension[4] = "mp3"
$extension[5] = "wav"
$extension[6] = "pdf"
$extension[7] = "dat"
$extension[8] = "dll"
$extension[9] = "odt"

for $extensiontest = 0 to 9 step 1 ; La valeur maximale de la boucle devra correspondre à la valeur entre crochet du dernier array $extension.

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mer. 01 juil. 2009 00:48
par orax
J'ai un peu corrigé mon exemple précédent :

Code : Tout sélectionner

#include <IE.au3>
Global $globale
$oIE = _IECreate("http://www.7-zip.net")
$SinkObject=ObjEvent($oIE,"IEEvent_","DWebBrowserEvents2")
While 1
    Sleep(100)
WEnd

Func IEEvent_BeforeNavigate2($a,$b,$c,$d,$e,$f)
    $globale=$b
EndFunc

Func IEEvent_FileDownload ($activeDocument ,$cancel )
    MsgBox(0,"Téléchargement de...",$globale)
EndFunc

Re: [..] Récupérer un lien qui n'est pas une page IE

Posté : mer. 01 juil. 2009 16:07
par DJSIR
Escusez-moi, testé sur un autre PC, puis re-sur le mien, sa fonctionne, juste la MsgBox s'affiche en fond.

EDIT : Pour les extentions de fichiers, regarder ici, et bonne chance pour celui qui va les intégrer au script ! :wink: