Je parcours ce forum depuis quelques temps étant novice dans l'utilisation d'AutoIT. Les exemples, tutos et aides apportées facilite la compréhension et l'utilisation du logiciel, même un novice comme moi arrive a faire des petits programmes grave à vous.
Je suis justement en train d'essayer de me faire un petit programme qui me permettrais de redémarrer plusieurs pc en les sélectionnant depuis une boite de dialogue déroulante.
Ma combobox est créee et utilise un fichier .txt contenant la liste des noms de PC a afficher dans la combobox. Mais là ou je bloque et que j'aurais besoin d'un coup de main c'est pour faire le lien entre le libellé du pc contenu dans mon fichier .txt et son adresse IP.
Je souhaiterais faire en sorte que quand je choisi dans ma combobox un PC son adresse IP soit renseignée dans mon code afin d'envoyer la commande vers le bon PC.
Voici la commande envoyée pour le reboot:
RunWait('"' & @ComSpec & '" /k ' & $CMD, @SystemDir)
pc 2
pc 3
pc 4
et le code complet:
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Global $BDD = "pc.txt"
GUICreate("Reboot", 226, 90, -1, -1)
Global $Valider = GUICtrlCreateButton("REBOOT", 75, 48, 75, 25)
Global $Combo = GUICtrlCreateCombo("Choisissez un pc dans la liste", 16, 16, 193, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL))
GUICtrlSetData ($Combo, _LectureBase())
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Valider
$CMD = 'D:\psshutdown.exe \\0.0.0.0 -u user -p toto -r -f -t 0 '
RunWait('"' & @ComSpec & '" /k ' & $CMD, @SystemDir)
MsgBox(16 + 8192, "Redémarrage en cours ...", "Reboot en cours de : " & GUICtrlRead($Combo))
EndSwitch
WEnd
Func _LectureBase()
$hFile = FileOpen($BDD)
If $hFile = -1 Then
MsgBox(16, "Erreur", "Erreur de lecture du fichier de base de données")
Exit
EndIf
Local $Datas
While 1
Local $Line = FileReadLine($hFile)
If @error = -1 Then ExitLoop
$Datas &= $Line & "|"
WEnd
FileClose($hFile)
Return $Datas
EndFunc ;==>_LectureBase
merci pour l'aide que vous pourrez m'apporter.