Question Arreter le script si un Read-Host est cancel ou laissé vide

Plus d'informations
il y a 2 ans 1 mois #31760 par xGreed
Bonjour à tous,

Comme dit dans le titre je veux pouvoir savoir si l'on ferme le popup de read-host ou si on le laisse vide.

Voila mon code :
$newpass = Read-Host "Entrez le nouveau mot de passe :" -AsSecureString # Pour saisir le nouveau mot de passe.
if ($newpass -eq $null)
{
    Write-Host "Entrez un mot de passe."
}

Il semblerait que read-host ne renvoit pas $null et je ne comprends donc pas comment faire.

Merci pour votre aide.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 1 mois #31762 par ericlm128
Après vérification ton code est bon
Lorsque l'on clique sur "Annuler" cela semble fermer le script tout simplement ce qui n'est pas terrible car nous préférerions avoir le choix de la suite à donner.
Il y a un paramètre (et jeu de paramètre) qui a été ajouté avec PowerShell 7.2 -MaskInput mais cette solution ne semble pas viable car la version la plus répandue est le 5.1

Je ne vois pas comment faire avec cette cmdlet, il faudrait que tu te crée ta propre invite de saisie je pense si tu veux quelque chose de propre.

Sinon une solution en détournant un peu son usage :
$newpass = (Get-Credential -UserName "NE PAS MODIFIER" -Message "Merci de rentrer le mot de passe").Password
if ($newpass -eq $null)
{
    Write-Host "Fenêtre Annulé"
}
elseif ($newpass.Length -eq 0)
{
    Write-Host "Mot de passe vide"
}
Les utilisateur(s) suivant ont remercié: xGreed

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 1 mois #31763 par xGreed
D'accord merci, je pense utiliser cette solution du coup, cela réponds à ce que je recherche !

Encore merci

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.072 secondes
Propulsé par Kunena