Page 1 sur 1

Compatibilité IniRead FileOpenDialog ?

Posté : dim. 20 févr. 2022 15:12
par MCrevot
Bonjour

Je rencontre une difficulté à utiliser IniRead après un recours à FileOpenDialog :
Après plusieurs IniRead qui renvoient correctement la valeur des clés recherchées, j'utilise FileOpenDialog pour sélecter un nom de fichier, puis réutilise IniRead : que ce soit dans la dernière section accédée ou pas, la fonction échoue et me renvoie la valeur par défaut.

Faute de code erreur, je ne parviens pas à me sortir de ce mauvais pas, une idée ?

Michel

Re: Compatibilité IniRead FileOpenDialog ?

Posté : dim. 20 févr. 2022 21:00
par mikell
Peut-être une histoire de chemin du ini. Comme dit la doc, "@WorkingDir is changed on successful return."
Voir dans l'aide l'exemple pour FileOpenDialog, notamment le "FileChangeDir(@ScriptDir)"

Si ça ne marche pas, merci de poster le code, ça sera quand même plus facile pour trouver une réponse :mrgreen:

Re: Compatibilité IniRead FileOpenDialog ?

Posté : lun. 21 févr. 2022 11:22
par MCrevot
Merçi Mikell de me répondre,

voilà un code exemple raccourci :

Code : Tout sélectionner

#include <MsgBoxConstants.au3>

; Lecture/maj paramètres de connexion

	$Serveur = IniRead("TestIni.ini", "Connexion", "Serveur", "Default Value")
    $Port = IniRead("TestIni.ini", "Connexion", "Port", "Default Value")

	$SimScenarios = "C:\Simu\AutoSim\Scenarios\"
	$NomScenario = FileOpenDialog("Choisir le scenario (*.fxml)",$SimScenarios,"All (*.*)" )

	$MaxCon = IniRead("TestIni.ini", "Connexion", "MaxCon", "Default Value")

	MsgBox(0,"",$Serveur & @CRLF & $Port & @CRLF & $MaxCon)
Le fichier Testini.ini :
[Connexion]
Serveur=192.168.1.20
Port=33891
MaxCon=5


La boite de dailogue affiche :
192.168.1.20
33891
Default Value

Michel

Re: Compatibilité IniRead FileOpenDialog ?

Posté : lun. 21 févr. 2022 12:23
par mikell
OK donc à essayer :

#include <MsgBoxConstants.au3>

; Lecture/maj paramètres de connexion

   $Serveur = IniRead("TestIni.ini", "Connexion", "Serveur", "Default Value")
    $Port = IniRead("TestIni.ini", "Connexion", "Port", "Default Value")

   $SimScenarios = "C:\Simu\AutoSim\Scenarios\"
   $NomScenario = FileOpenDialog("Choisir le scenario (*.fxml)",$SimScenarios,"All (*.*)" )

   FileChangeDir(@ScriptDir)
   $MaxCon = IniRead("TestIni.ini", "Connexion", "MaxCon", "Default Value")

   MsgBox(0,"",$Serveur & @CRLF & $Port & @CRLF & $MaxCon)

et si ça ne marche pas, utiliser dans IniRead le chemin complet du fichier .ini

Re: Compatibilité IniRead FileOpenDialog ?

Posté : lun. 21 févr. 2022 13:50
par MCrevot
Bonjour Mikell,
Le FileChangeDir change tout ! je m'en veux de ne pas y avoir pensé ...
Merçi 1000 fois ! :D
Michel

Re: Compatibilité IniRead FileOpenDialog ?

Posté : mer. 23 févr. 2022 21:10
par mikell
MCrevot a écrit : lun. 21 févr. 2022 13:50 Bonjour Mikell,
Le FileChangeDir change tout ! je m'en veux de ne pas y avoir pensé ...
Merçi 1000 fois ! :D
Michel
J'espère que c'est une plaisanterie... parce que j'avais donné la réponse précise dans mon post précédent (le n°2)
Bon c'est vrai, il fallait prendre la peine de lire le fichier d'aide comme indiqué, ce qui est très fatigant il faut bien le reconnaitre

Enfin... glad I could help , comme on dit sous d'autres cieux