Pas d'espace lors d'un retour chariot
Résolu
blop135
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
blop135 Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
blop135 Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je m'entraine sur Powershell en développant un petit script qui permet de récupérer les infos systèmes.
Jusqu'ici tout va bien sauf que quand je fais un retour chariot au niveau de l'affichage des addresses IP , addresses MAC et DNS il y a un petit espace avant chaque retour à la ligne et je ne comprends pas pourquoi.
Voici mon code:
J'ai également essayé avec `r puis `r`n mais c'est pareil hélas.
Merci d'avance :)
Je m'entraine sur Powershell en développant un petit script qui permet de récupérer les infos systèmes.
Jusqu'ici tout va bien sauf que quand je fais un retour chariot au niveau de l'affichage des addresses IP , addresses MAC et DNS il y a un petit espace avant chaque retour à la ligne et je ne comprends pas pourquoi.
Voici mon code:
Add-Type -AssemblyName System.Windows.Forms Add-Type -AssemblyName System.Drawing $NomUtilisateur = [System.Environment]::UserName $NomPC = [System.Environment]::MachineName $Ram = (Get-CimInstance Win32_Computersystem).TotalPhysicalMemory /1GB $Ram = [Math]::Round($Ram) $VersionSysteme = Get-CimInstance Win32_OperatingSystem | Select-Object Caption, BuildNumber, OSArchitecture $AdresseIP = Get-NetIPAddress -InterfaceAlias "Ethernet*" -AddressFamily IPv4 | Select-Object InterfaceAlias, IPAddress $AdresseMac = Get-NetAdapter -Name "Ethernet*" | Select-Object InterfaceAlias, MacAddress $DNS = Get-DnsClientServerAddress -InterfaceAlias "Ethernet*" -AddressFamily IPv4 | Select-Object InterfaceAlias, ServerAddresses $HardDrive = (Get-CimInstance Win32_DiskDrive) | Select-Object Caption, @{Name="Size(GB)"; Expression={"{0:N1}" -f($_.size/1gb)}} $Model = Get-CimInstance Win32_Computersystem | Select-Object Manufacturer, Model $SerialNumber = (Get-CimInstance Win32_BIOS).SerialNumber $TailleTexte = New-Object System.Drawing.Font("Arial","10", [System.Drawing.FontStyle]::Bold) $Fenetre = New-Object System.Windows.Forms.Form $Fenetre.Width = "800" $Fenetre.Height = "500" $Fenetre.Text = "Informations Systeme" $Fenetre.MaximizeBox = $false $LabelInfoSysteme = New-Object System.windows.Forms.Label $LabelInfoSysteme.Location = New-Object System.Drawing.Point(10,10) $LabelInfoSysteme.Autosize = $true $Fenetre.Controls.Add($LabelInfoSysteme) $LabelInfoSysteme.Text = "Informations Systeme" $LabelInfoSysteme.Font = $TailleTexte $LabelNomUtilisateur = New-Object System.Windows.Forms.Label $LabelNomUtilisateur.Location = New-Object System.Drawing.Point(20,30) $LabelNomUtilisateur.AutoSize = $true $LabelNomUtilisateur.Text = "Nom d'utilisateur : $($NomUtilisateur)" $Fenetre.Controls.Add($LabelNomUtilisateur) $LabelNomPC = New-Object System.Windows.Forms.Label $LabelNomPC.Location = New-Object System.Drawing.Point(20,50) $LabelNomPC.AutoSize = $true $LabelNomPC.Text = "Nom du PC : $($NomPC)" $Fenetre.Controls.Add($LabelNomPC) $LabelRam = New-Object System.Windows.Forms.Label $LabelRam.Location = New-Object System.Drawing.Point(20,70) $LabelRam.AutoSize = $true $LabelRam.Text = "Ram Totale : $($Ram) GO" $Fenetre.Controls.Add($LabelRam) $LabelVersionSysteme = New-Object System.Windows.Forms.Label $LabelVersionSysteme.Location = New-Object System.Drawing.Point(20,90) $LabelVersionSysteme.AutoSize = $true $LabelVersionSysteme.Text = "Version du systeme : $($VersionSysteme.Caption)", "$($VersionSysteme.OSArchitecture)" , "$($VersionSysteme.BuildNumber)" $Fenetre.Controls.Add($LabelVersionSysteme) $InfosReseau = New-Object System.Windows.Forms.Label $InfosReseau.Location = New-Object System.Drawing.Point(10,110) $InfosReseau.AutoSize = $true $InfosReseau.Text = "Informations Reseau" $InfosReseau.Font = $TailleTexte $Fenetre.Controls.Add($InfosReseau) $LabelAdresseIP = New-Object System.Windows.Forms.Label $LabelAdresseIP.Location = New-Object System.Drawing.Point(20,130) $LabelAdresseIP.AutoSize = $true $LabelAdresseIP.Text = Foreach($AdresseIP in $AdresseIP){"Adresse IP $($AdresseIP.InterfaceAlias):","$($AdresseIP.IPAddress)`n"} $Fenetre.Controls.Add($LabelAdresseIP) $LabelAdresseMAC = New-Object System.Windows.Forms.Label $LabelAdresseMAC.Location = New-Object System.Drawing.Point(20,170) $LabelAdresseMAC.AutoSize = $true $LabelAdresseMAC.Text = ForEach ($AdresseMac in $AdresseMac){"Adresse MAC $($AdresseMac.InterfaceAlias):","$($AdresseMac.MacAddress)`n"} $Fenetre.Controls.Add($LabelAdresseMAC) $LabelDNS = New-Object System.Windows.Forms.Label $LabelDNS.Location = New-Object System.Drawing.Point(20,230) $LabelDNS.AutoSize = $true $LabelDNS.Text = ForEach($DNS in $DNS){"DNS $($DNS.InterfaceAlias)","$($DNS.ServerAddresses)`n"} $Fenetre.Controls.Add($LabelDNS) $DisquesDur = New-Object System.Windows.Forms.Label $DisquesDur.Location = New-Object System.Drawing.Point(10,280) $DisquesDur.AutoSize = $true $DisquesDur.Text = "Disques dur" $DisquesDur.Font = $TailleTexte $Fenetre.Controls.Add($DisquesDur) $LabelHardDriveSize = New-Object System.Windows.Forms.Label $LabelHardDriveSize.Location = New-Object System.Drawing.Point(20,300) $LabelHardDriveSize.AutoSize = $true $LabelHardDriveSize.Text = ForEAch($HardDrive in $HardDrive){"$($HardDrive.Caption):","$($HardDrive.'Size(GB)') GO`n"} $Fenetre.Controls.Add($LabelHardDriveSize) $InfosPoste = New-Object System.Windows.Forms.Label $InfosPoste.Location = New-Object System.Drawing.Point(10,370) $InfosPoste.AutoSize = $true $InfosPoste.Text = "Informations Poste" $InfosPoste.Font = $TailleTexte $Fenetre.Controls.Add($InfosPoste) $LabelBrand = New-Object System.Windows.Forms.Label $LabelBrand.Location = New-Object System.Drawing.Point(20,390) $LabelBrand.AutoSize = $true $LabelBrand.Text = "Marque : $($Model.Manufacturer)" $Fenetre.Controls.Add($LabelBrand) $LabelModel = New-Object System.Windows.Forms.Label $LabelModel.Location = New-Object System.Drawing.Point(20,410) $LabelModel.AutoSize = $true $LabelModel.Text = "Modele : $($Model.Model)" $Fenetre.Controls.Add($LabelModel) $LabelSerialNumber = New-Object System.Windows.Forms.Label $LabelSerialNumber.Location = New-Object System.Drawing.Point(20,430) $LabelSerialNumber.AutoSize = $true $LabelSerialNumber.Text = "Numero de serie : $($SerialNumber)" $Fenetre.Controls.Add($LabelSerialNumber) $Fenetre.ShowDialog()
J'ai également essayé avec `r puis `r`n mais c'est pareil hélas.
Merci d'avance :)
Message modifié par la modération
Pour une lecture plus facile du code, à l'avenir utilisez les balises, VOIR CETTE PAGE |
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
il est préférable, avant de partager ton code ici, de le simplifier au maximum afin de nous montrer un petit code qui démontre le problème.
moi j'essaierais
afin de déterminer où se trouve l'espace
il est préférable, avant de partager ton code ici, de le simplifier au maximum afin de nous montrer un petit code qui démontre le problème.
moi j'essaierais
$LabelAdresseIP.Text = Foreach($AdresseIP in $AdresseIP){"Adresse IP $($AdresseIP.InterfaceAlias):","$($AdresseIP.IPAddress)|`n"}
afin de déterminer où se trouve l'espace
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 584
en passant, je suis étonné du double usage du nom $AdresseIP. il me semble que d'habitude, on écrit plutôt ainsi:
Bonjour,
Merci de ta réponse, alors j'ai fait ce que tu m'as dit mais comme je me doutais il me rajoute ça comme ça du coup:
Merci de ta réponse, alors j'ai fait ce que tu m'as dit mais comme je me doutais il me rajoute ça comme ça du coup:

yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
suggestion:
$listip="" Foreach($IP in $AdresseIP){ $listip=$listip + "Adresse IP $($IP.InterfaceAlias): $($IP.IPAddress)`n" } $LabelAdresseIP.Text = $listip