Résolu
Saisie d'un mdp auto dans un script
- Sébastien
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 43
- Remerciements reçus 0
il y a 2 ans 8 mois - il y a 2 ans 8 mois #31225
par Sébastien
Saisie d'un mdp auto dans un script a été créé par Sébastien
Bonjour à tous,
Je suis en train de refaire un script batch en Powershell mais je bloque à une étape.
Ce script permet de désinstaller un antivirus mais avant il faut désactiver une sécurité avec un .exe que j'appel suivi d'une commande "protect disable" et là il demande le mot de passe quand je le fais à manuellement.
Mon code suivant ouvre bien le .exe du moins je pense car le script s'arrête et doit attendre la saisie et si je mets une autre commande qui ne demande pas de mdp j'ai bien des infos qui remonte.
Ce que souhaite c'est que la saisie du mot de passe demandé soit faite automatiquement.
En batch voici la ligne qui fonctionne :
%Password% et la variable avec le code et %Cytool% le chemin (c:programme files) vers l'application suivit de la commande protect disable.
J'ai essayé plusieurs choses en powershell mais je n'y arrive pas. Je pense qu'il faut aussi utiliser une boucle for mais je n'arrive pas à la mettre en place.
Merci de votre aide.
Je suis en train de refaire un script batch en Powershell mais je bloque à une étape.
Ce script permet de désinstaller un antivirus mais avant il faut désactiver une sécurité avec un .exe que j'appel suivi d'une commande "protect disable" et là il demande le mot de passe quand je le fais à manuellement.
Mon code suivant ouvre bien le .exe du moins je pense car le script s'arrête et doit attendre la saisie et si je mets une autre commande qui ne demande pas de mdp j'ai bien des infos qui remonte.
Invoke-Expression "& `"$Cytool`"protect disable"
Ce que souhaite c'est que la saisie du mot de passe demandé soit faite automatiquement.
En batch voici la ligne qui fonctionne :
for /f "tokens=*" %%v in ('"echo %Password%|%Cytool% protect disable"') do ( set searchResults=%%v)
%Password% et la variable avec le code et %Cytool% le chemin (c:programme files) vers l'application suivit de la commande protect disable.
J'ai essayé plusieurs choses en powershell mais je n'y arrive pas. Je pense qu'il faut aussi utiliser une boucle for mais je n'arrive pas à la mettre en place.
Merci de votre aide.
Dernière édition: il y a 2 ans 8 mois par Sébastien.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 6302
- Remerciements reçus 68
il y a 2 ans 8 mois - il y a 2 ans 8 mois #31227
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Saisie d'un mdp auto dans un script
Salut,
la redirection de l'entrée clavier ne fonctionne pas nativement sous Powershell.
Essaie avec l'API SendKeys : stackoverflow.com/questions/17849522/how...ke-inside-powershell
Sinon manipule les handles standard : stackoverflow.com/questions/11447598/red...-powershell/11788475
la redirection de l'entrée clavier ne fonctionne pas nativement sous Powershell.
Essaie avec l'API SendKeys : stackoverflow.com/questions/17849522/how...ke-inside-powershell
Sinon manipule les handles standard : stackoverflow.com/questions/11447598/red...-powershell/11788475
Tutoriels PowerShell
Dernière édition: il y a 2 ans 8 mois par Laurent Dardenne. Raison: balise
Connexion ou Créer un compte pour participer à la conversation.
- Sébastien
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 43
- Remerciements reçus 0
il y a 2 ans 8 mois - il y a 2 ans 8 mois #31228
par Sébastien
Réponse de Sébastien sur le sujet Saisie d'un mdp auto dans un script
Merci pour ta réponse, j'ai testé la première méthode en l’exécutant simplement avec un cmd ouvert en effet ca envoi du texte sur la fenêtre.
Par contre quand je lance mon code je n'ai pas de de processus cmd qui démarre car c'est un .exe et je ne vois pas ce qu'il fait. Si je mets une autre commande (Je remplace "protect disable" par "runtime start" il me revois les infos dans la console powershell dommage de ne pas avoir cette invite du mot de passe dans la console.
Désactivation agent tampering protection
Service State
cyverak Running
cyvrmtgn Running
cyvrfsfd Running
cyserver Running
tedrdrv Running
telam Stopped
Patienter 5 secondes
Du coup je vois pas comment lui répondre.
Par contre quand je lance mon code je n'ai pas de de processus cmd qui démarre car c'est un .exe et je ne vois pas ce qu'il fait. Si je mets une autre commande (Je remplace "protect disable" par "runtime start" il me revois les infos dans la console powershell dommage de ne pas avoir cette invite du mot de passe dans la console.
Désactivation agent tampering protection
Service State
cyverak Running
cyvrmtgn Running
cyvrfsfd Running
cyserver Running
tedrdrv Running
telam Stopped
Patienter 5 secondes
Du coup je vois pas comment lui répondre.
Dernière édition: il y a 2 ans 8 mois par Sébastien.
Connexion ou Créer un compte pour participer à la conversation.
- Sébastien
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 43
- Remerciements reçus 0
il y a 2 ans 8 mois - il y a 2 ans 8 mois #31229
par Sébastien
Réponse de Sébastien sur le sujet Saisie d'un mdp auto dans un script
J'ai trouvé la fenêtre se cache, elle est dans le processus Windows Powershell et si je déploie je vois ma fenêtre dos je vois aussi du coup mon .exe démarré mais cela ne fonctionne pas car il stop le script en attente du mdp du coup la suite du code n'est pas exécuté.
Dernière édition: il y a 2 ans 8 mois par Sébastien.
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 2 ans 8 mois #31251
par Philippe
Réponse de Philippe sur le sujet Saisie d'un mdp auto dans un script
salut
je viens de faire un petit test et il semble que avec ISE on ne puisse pas faire de saisie depuis un programme DOS
mais par contre ca fonctionne avec la console powershell
seul soucis tu a la question et la réponse dans le résultat de la commande !!!
a+
PS : test fait avec : $rep = C:\Windows\System32\choice.exe
je viens de faire un petit test et il semble que avec ISE on ne puisse pas faire de saisie depuis un programme DOS
mais par contre ca fonctionne avec la console powershell
seul soucis tu a la question et la réponse dans le résultat de la commande !!!
a+
PS : test fait avec : $rep = C:\Windows\System32\choice.exe
Connexion ou Créer un compte pour participer à la conversation.
- Sébastien
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 43
- Remerciements reçus 0
il y a 2 ans 8 mois #31254
par Sébastien
Réponse de Sébastien sur le sujet Saisie d'un mdp auto dans un script
Salut, merci pour ton test mais j'ai trouvé un moyen, en gros dans mon script j'appel mon .bat avec la commande indiqué plus haut et la variable avec le mot de passe et il continu ensuite le script. L'avantage c'est qu'une fois le script fini je lui fait supprimer le .bat comme ça pas de mot de passe qui traine en clair sur le PC, le fichier ne sera présent que 2 min sur le PC de l'utilisateur.
Merci de votre aide.
Merci de votre aide.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.077 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Saisie d'un mdp auto dans un script