[R] Récupérer un lien qui n'est pas une page IE
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.
- DJSIR
- Niveau 8

- Messages : 583
- Enregistré le : mar. 01 juil. 2008 15:16
- Localisation : 76, Le HAVRE (in the DJSIR World)
- Status : Hors ligne
[R] Récupérer un lien qui n'est pas une page IE
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 !
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 !
Modifié en dernier par DJSIR le mer. 01 juil. 2009 16:07, modifié 1 fois.
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)
[Func] ProgressBar, aller plus loin
(ne décodez pas le binaire, ça veux rien dire)
[Func] ProgressBar, aller plus loin
Re: [..] Récupérer un lien qui n'est pas une page IE
Votre idée m'a inspiré.
Voici mon script :
Désolé si les variables sont carrément mal nommées, si les conditions foisonnent de partout ^^.
Voici mon script :
► Afficher le texte
- DJSIR
- Niveau 8

- Messages : 583
- Enregistré le : mar. 01 juil. 2008 15:16
- Localisation : 76, Le HAVRE (in the DJSIR World)
- Status : Hors ligne
Re: [..] Récupérer un lien qui n'est pas une page IE
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.
Il faut revoir ton code.
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)
[Func] ProgressBar, aller plus loin
(ne décodez pas le binaire, ça veux rien dire)
[Func] ProgressBar, aller plus loin
Re: [..] Récupérer un lien qui n'est pas une page IE
Fonctionne parfaitement pour moi avec IE6 et IE8.
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] Récupérer un lien qui n'est pas une page IE
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).
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] Récupérer un lien qui n'est pas une page IE
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é.
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
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Re: [..] Récupérer un lien qui n'est pas une page IE
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.
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.
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] Récupérer un lien qui n'est pas une page IE
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)
EndFuncDe petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
- DJSIR
- Niveau 8

- Messages : 583
- Enregistré le : mar. 01 juil. 2008 15:16
- Localisation : 76, Le HAVRE (in the DJSIR World)
- Status : Hors ligne
Re: [..] Récupérer un lien qui n'est pas une page IE
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 !
EDIT : Pour les extentions de fichiers, regarder ici, et bonne chance pour celui qui va les intégrer au script !
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)
[Func] ProgressBar, aller plus loin
(ne décodez pas le binaire, ça veux rien dire)
[Func] ProgressBar, aller plus loin

