[..] Remplir une fenetre windows
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.
[..] Remplir une fenetre windows
Bonjour,
Je cherche à remplir de façon autonome les champs d'une fenêtre windows, le but étant de faire une mise a jour automatique d'une base de données.
Bref, ma fenêtre de sécurité windows s'affiche en même temps que l'ouverture de ma page, mais je n'arrive pas a renseigner les champs. J'ai essayé avec la fonction Send(), puis la fonction ControlSend() mais je n'y arrive pas.
J'ai 2 champs a remplir, le title de la fenetre c'est : sécurité de windows
et la classe : 34570
avec Edit 1 et Edit 2
Si quelqu'un peut m'aider / m'expliquer comment faire cela sera sympa.
Merci.
A+
Je cherche à remplir de façon autonome les champs d'une fenêtre windows, le but étant de faire une mise a jour automatique d'une base de données.
Bref, ma fenêtre de sécurité windows s'affiche en même temps que l'ouverture de ma page, mais je n'arrive pas a renseigner les champs. J'ai essayé avec la fonction Send(), puis la fonction ControlSend() mais je n'y arrive pas.
J'ai 2 champs a remplir, le title de la fenetre c'est : sécurité de windows
et la classe : 34570
avec Edit 1 et Edit 2
Si quelqu'un peut m'aider / m'expliquer comment faire cela sera sympa.
Merci.
A+
Re: [..] Remplir une fenetre windows
Bonjour,
Une petite capture d'écran est elle faisable ?
Et que se passe t-il lors de la simulation de touche clavier ?
Une petite capture d'écran est elle faisable ?
Et que se passe t-il lors de la simulation de touche clavier ?
Y01
Re: [..] Remplir une fenetre windows
Initialement je voulais faire un truc super simple du genre :
Sauf qu'au premier essai (je n'avais pas les lignes Send("{TAB}") et Send("mdp") ) cela à bien affiché le login, mais après plus moyen de renouveler l'expérience... je ne comprends pas trop.
Code : Tout sélectionner
#include <IE.au3>
Local $oIE = _IECreate("https://124444.admincjh.gpuus.net")
Send("login")
Send("{TAB}")
Send("mdp")
Re: [..] Remplir une fenetre windows
En fait je me rends compte que c'est lorsque je quitte la fenêtre en cliquant sur "Annuler" que l’écriture s’exécute...
Re: [..] Remplir une fenetre windows
Je ne comprends pas bien la demande.
C'est une fenêtre de sécurité Windows qui s'ouvre ou une identification sur un site web ?
C'est une fenêtre de sécurité Windows qui s'ouvre ou une identification sur un site web ?
Y01
Re: [..] Remplir une fenetre windows
Regardes l'imprimecran normalement joint.
Re: [..] Remplir une fenetre windows
Je ne comprends pas pourquoi le send ne fonctionne pas.
Par contre, il est toujours possible d'ouvrir le site avec les identifiants en commande.
Par contre, il est toujours possible d'ouvrir le site avec les identifiants en commande.
Code : Tout sélectionner
#include <IE.au3>
$login="login"
$mdp="mot de passe"
Local $oIE = _IECreate("https://" & $login & ":" & $mdp & "@1294.admin.gpaas.net")Y01
Re: [..] Remplir une fenetre windows
Désolé mais je n'ai pas compris le passage en commande.
Ok pour les 2 variables, mais pour que ces dernières s'incluent dans les champs de la fenêtre de connexion, la j'avoue...
Merci.
Ok pour les 2 variables, mais pour que ces dernières s'incluent dans les champs de la fenêtre de connexion, la j'avoue...
Merci.
Re: [..] Remplir une fenetre windows
Après il y a la solution d'enregistrer les identifiants de connexion.. mais je n'aime pas trop cela.
- TommyDDR
- Modérateur

- Messages : 2127
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: [..] Remplir une fenetre windows
La fenêtre de sécurité windows s'exécute en tant qu'administrateur, et votre compte doit avoir l'UAC d'activé (et donc interdiction d'interragir avec des fenêtres admin).
Essayez d'ajouter #RequireAdmin en début de script.
Essayez d'ajouter #RequireAdmin en début de script.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Re: [..] Remplir une fenetre windows
Peut être que _IECreate attend que la page soit chargée, ce qui n'arrive pas tant que tu n'a pas saisi l'identifiant. En gros ton Send attend que _IECreate soit terminé, et _IECreate a besoin de Send
Ce que tu peux faire c'est changer ton _IECreate par un
Le mieux est d'utiliser les controles windows à la place de send comme ceci (renseigne toi sur le AWI : Autoit Windows Info, si tu ne connais pas)
C'est plus propre que des Send
Ce que tu peux faire c'est changer ton _IECreate par un
Code : Tout sélectionner
ShellExecute("iexplore", "https://124444.admincjh.gpuus.net")
WinWaitActive("Sécurité de Windows") ; a déterminer avec le AWICode : Tout sélectionner
ShellExecute("iexplore", "https://124444.admincjh.gpuus.net")
WinWaitActive("Sécurité de Windows") ; a déterminer avec le AWI
ControlSend("Sécurité de Windows", "", "[CLASSNN:xxxxxxxxx]", "user") ; idem
ControlSend("Sécurité de Windows", "", "[CLASSNN:yyyyyyyy]", "mdp") ; idem
ControlClick("Sécurité de Windows", "", "[CLASSNN:zzzzzzzzz]") ; bouton OK, idemRe: [..] Remplir une fenetre windows
Le code que je t'ai mis est fonctionnel...danieller a écrit :Désolé mais je n'ai pas compris le passage en commande.
Ok pour les 2 variables, mais pour que ces dernières s'incluent dans les champs de la fenêtre de connexion, la j'avoue...
Merci.
Il te suffit de changer les variables par tes identifiants. Si tu ne souhaite pas les inscrire en dur, tu peux toujours faire une GUI dans laquelle tu inscris tes identifiants qui seront stockés jusqu'à la fermeture de la GUI.
Y01
Re: [..] Remplir une fenetre windows
@Tommy : on parle bien de page web sécurisée par mot de passe (type .htaccess), pas de l'UAC. Donc la popup de sécurité s'exécute dans le contexte utilisateur, non ?
Avec ce code, ça fonctionne chez moi, uniquement sous Windows 7 (pas sous XP, et je n'ai pas Windows
Avec ce code, ça fonctionne chez moi, uniquement sous Windows 7 (pas sous XP, et je n'ai pas Windows
► Afficher le texte
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Re: [..] Remplir une fenetre windows
Bonsoir, j'ai réussi a faire fonctionner le script grace à vos réponses,
voici ce que j'ai fait :
merci
voici ce que j'ai fait :
Code : Tout sélectionner
#include <IE.au3>
ShellExecute("iexplore", "https://12.admingpaas.net/phpmyadmin/index.php")
WinWaitActive("Sécurité de Windows")
Send("login")
Send("{TAB}")
Send("mdp")
Send("{ENTER}")
Re: [..] Remplir une fenetre windows
ControlSend est plus propre/fiable/conseillé qu'un Send qui risque d'être bancal... 
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] Remplir une fenetre windows
+1 pour ControlSend
Le #include <IE.au3> ne devrait plus être nécessaire.
Le #include <IE.au3> ne devrait plus être nécessaire.
Cette solution est bonne mais si la version d'IE est récente, ça ne devrait pas marcher. J'ai lu ça sur le support de Microsoft :Y01 a écrit :Par contre, il est toujours possible d'ouvrir le site avec les identifiants en commande.
Code : Tout sélectionner
... Local $oIE = _IECreate("https://" & $login & ":" & $mdp & "@1294.admin.gpaas.net")
Le comportement par défaut a donc été changé pour des raisons de sécurité.Comportement par défaut d'Internet Explorer pour la gestion des informations utilisateur dans les URL HTTP et HTTPS a écrit :Par défaut, les versions de Windows Internet Explorer qui ont été publiées depuis la version finale de la mise à jour de sécurité 832894 ne prennent pas en charge la gestion des noms d'utilisateur et des mots de passe dans les URL HTTP, HTTP avec SSL (Secure Socket Layer) et HTTPS. La syntaxe d'URL suivante n'est pas prise en charge dans Internet Explorer ou dans l'Explorateur Windows :
http(s)://nom_utilisateur:mot_de_passe@serveur/ressource.ext
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Re: [..] Remplir une fenetre windows
Merci pour l'info Orax !
J'avais fait un test sous IE8 et ça fonctionnait sinon je n'aurais pas mis cette solution
J'avais fait un test sous IE8 et ça fonctionnait sinon je n'aurais pas mis cette solution
Y01



