Important Aide pour commenter le code

Plus d'informations
il y a 12 ans 4 mois #16289 par Laurent Dardenne
Je pensais que tu voulais apprendre et pas juste faire...

NabilGates écrit:

l'outil lui meme est fonctionnel

Sur mon poste (Seven 64) il ne fonctionne pas, comme indiqué ici je pense.

Une autre version :
[code:1]
function CustomInputBox([string] $title, [string] $message, [string] $defaultText)
{
#Crée une fonction affichant une boîte de saisie

[void] [System.Reflection.Assembly]::LoadWithPartialName(\"System.Drawing\"«»)
[void] [System.Reflection.Assembly]::LoadWithPartialName(\"System.Windows.Forms\"«»)
$userForm = New-Object System.Windows.Forms.Form
$userForm.Text = \"$title\"
$userForm.Size = New-Object System.Drawing.Size(290,150)
$userForm.StartPosition = \"CenterScreen\"
$userForm.AutoSize = $False
$userForm.MinimizeBox = $False
$userForm.MaximizeBox = $False
$userForm.SizeGripStyle= \"Hide\"
$userForm.WindowState = \"Normal\"
$userForm.FormBorderStyle=\"Fixed3D\"

$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = New-Object System.Drawing.Size(115,80)
$OKButton.Size = New-Object System.Drawing.Size(75,23)
$OKButton.Text = \"OK\"
$OKButton.Add_Click({$value=$objTextBox.Text;$userForm.Close()})
$userForm.Controls.Add($OKButton)
$CancelButton = New-Object System.Windows.Forms.Button
$CancelButton.Location = New-Object System.Drawing.Size(195,80)
$CancelButton.Size = New-Object System.Drawing.Size(75,23)
$CancelButton.Text = \"Cancel\"
$CancelButton.Add_Click({$value=[String]::Empty;$userForm.Close()})
$userForm.Controls.Add($CancelButton)
$userLabel = New-Object System.Windows.Forms.Label
$userLabel.Location = New-Object System.Drawing.Size(10,20)
$userLabel.Size = New-Object System.Drawing.Size(280,20)
$userLabel.Text = \"$message\"
$userForm.Controls.Add($userLabel)
$objTextBox = New-Object System.Windows.Forms.TextBox
$objTextBox.Location = New-Object System.Drawing.Size(10,40)
$objTextBox.Size = New-Object System.Drawing.Size(260,20)
$objTextBox.Text=\"$defaultText\"
$userForm.Controls.Add($objTextBox)
$userForm.Topmost = $True
$userForm.Opacity = 0.91
$userForm.ShowIcon = $False
$userForm.Add_Shown({$userForm.Activate()})
[void] $userForm.ShowDialog()
return $value
} #F° CustomInputBox

#Déclaration d'une variable type boolean
[boolean]$isExit=$true

# Boucle tant que $isExit est égale à $true
while ($isExit){
#J'efface la console à chaque iétération
Clear-Host
#Je déclare une nouvelle variable de type String et lui affecte une chaine vide
[String]$MaVariable =[string]::Empty

#Afficher une fenêtre de saisie afin de récupérer une adresse IP
$MaVariable = CustomInputBox \"Recherche de numero de serie\" \"Entrez une adresse IP\" \"127.0.0.1\"

#Si l'adresse IP n'est pas une chaine vide
if ($MaVariable.Length -igt 0)
{
#Recherche des informations système dans le référentiel WMI
$SerialNumber=(Get-WmiObject -Class Win32_BIOS -NameSpace \"root\CIMV2\" -Computer \"$MaVariable\"«»).SerialNumber
if ($SerialNumber -igt 0)
{
$message = $SerialNumber
$nom=(gwmi -class win32_computerSystem -Computer \"$MaVariable\"«»).username
}else
{
#Affecte au variable $Message et $Nom une chaine vide.
$message =[string]::Empty
$nom = [string]::Empty
}

#Crée un Objet COM du type 'wscript.shell'
$shell = new-object -comobject wscript.shell
#affiche le résultat dans une fenêtre de dialogue.
$shell.popup(\"Adresse IP :`t`t$MaVariable `rNuméro de série :`t`t$message `rGroup/NomSESSION :`t$nom\",\"0\",\"Recherche\",\"0\"«»)

#J'efface la console
Clear-Host

# J'écris sur la console les valeurs de MaVariable, Message et Nom
write-host \"Adresse IP : $MaVariable\"
write-host \"Numéro de série : $message\"
write-host \"Nom : $nom\"
#Affecte au variable $Message et $Nom une chaine vide.
$message =[string]::Empty
$nom = [string]::Empty
}
else
{
#L'adresse IP est une chaine vide, je quitte la boucle
$isExit=$false
}
}
#Je quitte le script.
#exit
[/code:1]
Pense à décommenter la dernière ligne

Tutoriels PowerShell

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

Plus d'informations
il y a 12 ans 4 mois #16290 par NabilGates
Réponse de NabilGates sur le sujet Re:Aide pour commenter le code
Merci beaucoup je m'attendais pas du tout a cette réaction

Merci encore :woohoo:

Le powershell c'est une autre façon de voir les choses je reviendrais plus souvent et cette fois je commence par les tutoriaux

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

Plus d'informations
il y a 12 ans 4 mois #16291 par NabilGates
Réponse de NabilGates sur le sujet Re:Aide pour commenter le code
Je viens de faire ça :laugh:

ps1 to exe

ps2exe.codeplex.com/releases/view/103172

J'ai téléchargé PS2EXE v0.4
Que j'ai décompressé dans le e:\labo\
En suite j'ai mis le script qui cherche le numéro de série ici nommé a.ps1
Et j'ai lancé cette commande


e:\labo\ps2exe.ps1 -InputFile \"e:\labo\a.ps1\" -OutputFile \"e:\labo\MyOwnScript_STA_noconsole-X86.exe\" -x86 -sta -noconsole -runtime20

Résultat final un exécutable

ps1 to exe

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

Plus d'informations
il y a 12 ans 4 mois #16292 par Laurent Dardenne
NabilGates écrit:

Résultat final un exécutable

Essaie sur une machine où Powershell n'est pas installé, comme ça, pour voir.

Tutoriels PowerShell

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

Plus d'informations
il y a 12 ans 4 mois #16293 par NabilGates
Réponse de NabilGates sur le sujet Re:Aide pour commenter le code
Il seras executer depuis le meme poste a chaques fois et y a powershell

Si non je sais sais que ce n'est pas un exe :p

Mais le plus important c'est que l'utilisateur ne seras pas obligé d'ouvre un logiciel pour juste une histoire d'IP


La l'IHM est respecté


Merci pour tout il vas tourné ce site déjà rien ce soir j'ai envoyé a 21personnes

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

Plus d'informations
il y a 12 ans 4 mois #16294 par Laurent Dardenne
Bonne chance avec ton rapport de stage.
A+

Tutoriels PowerShell

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

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