jeudi 14 mars 2019

PowerShell GUI et EXE






Vous avez un script Powershell, mais c'est compliqué à utiliser ou il est franchement moche ?

1°)
Il vous faut un interface Graphique ?
Rien de plus simple avec le site POSHGUI: https://poshgui.com/Editor

2°)
Mais j'ai pas d'îcone:
pas de panic, un petit site pour convertir une image en icone:
https://icoconvert.com/

3°)
Et pour changer l'icone en haut de l'interface par un truc plus sympa ?
$Icon = New-Object system.drawing.icon (".\favicon.ico")
$Form.Icon = $Icon 
ou

ajouter une image converti en texte grâce à 
https://websemantics.uk/tools/image-to-data-uri-converter/
Selectionnez Data-URI
Vous obtenez:
Your data-URIs:
// favicon
data:image/x-icon;base64,AAABAAQAQEA...
 Ajoutez dans votre code PowerShell

$iconBase64      = 'AAABAAQAQEAAAAEAIAAoQA....'
$iconBytes       = [Convert]::FromBase64String($iconBase64)
$stream          = New-Object IO.MemoryStream($iconBytes, 0, $iconBytes.Length)
$stream.Write($iconBytes, 0, $iconBytes.Length);
$iconImage       = [System.Drawing.Image]::FromStream($stream, $true)
$Form.Icon       = [System.Drawing.Icon]::FromHandle((New-Object System.Drawing.Bitmap -Argument $stream).GetHIcon())

4°)
Super, une interface graphique, mais c'est toujours aussi laborieux de lancer le script
Pas de problème, il suffit de le convertir EXE
https://gallery.technet.microsoft.com/PS2EXE-Convert-PowerShell-9e4e07f1
Il s'utilise ainsi depuis une console PowerShell:
powershell.exe -command .\ps2exe.ps1 script_a_convertir.ps1 exe_converti.exe -noConsole -iconfile favicon.ico 

Help:
http://vps297246.ovh.net/powershell-transformer-un-script-powershell-en-executable/

Aucun commentaire:

Enregistrer un commentaire