Hmmmm... Quelques choses me semblent bizares...
1/ Tes variables sont nommées n'importe comment :
-> $file contient le retour de FileSelectFolder qui comme son nom l'indique renvoie un dossier
-> $chemin contient la valeur de Adresse du fichier Ini, qui est en fait la référence a un executable
-> $Destination contient la valeur de Destination du fichier Ini, qui est en fait un chemin
2/ Et tant que j'y suisavec tes variables elles ne sont pas toutes déclarées ($nMsg, $Cible, $Chemin, $Destination...). Prend l'habitude de mettre un
au début de tes scripts, ca t'oblige a déclarer tes variables. C'est chi*nt au début, masi on en prend vite l'habitude et au final on gagne du temps, et de la cohérence.
3/ La ligne
est la source de ton problème. On ne réaffecte pas a la variable qui contient l'ID d'un controle de la GUI la valeur du contenu de ce controle !!!
Ceci devrait mieux marcher:
Code : Tout sélectionner
Case $Lancer
$Archive = GUICtrlRead($NomArchive)
$Chemin = IniRead("config.ini", "Chemin", "Adresse", "")
$Destination = IniRead("config.ini", "Chemin", "Destination", "")
If $File = "" Or $Archive = "" Then
MsgBox(0, "Erreur", "erreur")
Else
Run($Chemin & " a -sfx " & Chr(34) & $Destination & $Archive & Chr(34) & " -mx5 -psecret -mhe " & Chr(34) & $Cible & Chr(34))
EndIf