Page 1 sur 1
[R] Renvoyer nom de section si key est correct (.ini)
Posté : sam. 15 mars 2014 01:20
par TiOm4cK
bonjour a tous aujourd'hui j'ai un petit soucis je n'arrive pas du moins je ne sais pas comment m'y prendre pour retourner le nom de section si la valeur d'une key est egal a celle que l'on lui a demander de chercher je m'explique.
sur mon bureau j'ai un fichier trashlocal.ini qui ce presentent
sous cette forme ci
Code : Tout sélectionner
[pclocalpareftokgrg]
nomko=valeur_01
key23=valeur_85
jk45=valeur_21
[pclocalpareft451g]
nomko=valeur_01
key23=valeur_85
jk45=valeur_21
[pclocalpar4951rg]
nomko=valeur_01
key23=valeur_85
jk45=valeur_21
[pclocalp1624rg]
nomko=valeur_01
key23=valeur_85
jk45=valeur_21
et voici la gui qui va avec
► Afficher le texte
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form2 = GUICreate("Form2", 360, 296, 191, 123)
$ListView1 = GUICtrlCreateListView("nom retro", 8, 66, 341, 223)
GUICtrlSendMsg($Listview1, $LVM_SETCOLUMNWIDTH, 0, 200)
$Input1 = GUICtrlCreateInput("valeur_", 8, 38, 115, 21)
$Button1 = GUICtrlCreateButton("rechercher", 130, 38, 85, 23)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
IniRead
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $Button1
$nametofind = GUICtrlRead($input1)
EndSwitch
WEnd
enfaite j'aimerai que quand j'appuye sur rechercher le script cherche si valeur inscrite dans le input existe dans les key23 de toute les sections du trashlocal.ini et si il exist alors il retourne le nom de la section dans le tableau
j'ai peur de n'avoir pas su m'etre fait comprendre dans le doute je reste dans le coin pour toute
le probleme pour moi vient surtout du comment faire pour retoruner le nom de section
merci beaucoup

Re: [..] Renvoyer nom de section si key est correct (.ini)
Posté : sam. 15 mars 2014 01:45
par Tlem
Bonsoir.
Utilisez la commande " IniReadSectionNames" pour lire toutes les sections de votre fichier .ini.
Ensuite une simple boucle du tableau résultant à la recherche de la valeur de chaque clé "key23" vous permettra de savoir si oui ou non votre valeur est existante. ^^
Envoyé depuis mon appareil mobile avec Tapatalk.
Re: [..] Renvoyer nom de section si key est correct (.ini)
Posté : sam. 15 mars 2014 02:04
par TiOm4cK
Tlem a écrit :Bonsoir.
Utilisez la commande " IniReadSectionNames" pour lire toutes les sections de votre fichier .ini.
Ensuite une simple boucle du tableau résultant à la recherche de la valeur de chaque clé "key23" vous permettra de savoir si oui ou non votre valeur est existante. ^^
Envoyé depuis mon appareil mobile avec Tapatalk.
merci tlem rien de bien compliquer je vais mettre ca sur le compte de la fatigue
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form2 = GUICreate("Form2", 360, 296, 191, 123)
$ListView1 = GUICtrlCreateListView("nom retro", 8, 66, 341, 223)
GUICtrlSendMsg($Listview1, $LVM_SETCOLUMNWIDTH, 0, 200)
$Input1 = GUICtrlCreateInput("valeur_", 8, 38, 115, 21)
$Button1 = GUICtrlCreateButton("rechercher", 130, 38, 85, 23)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $Button1
$nametofind = GUICtrlRead($input1)
$aArray = IniReadSectionNames(@ScriptDir&"\local.ini")
If Not @error Then
For $i = 1 To $aArray[0]
$readini = IniRead(@ScriptDir&"\local.ini",$aArray[$i],"key23","default")
if $nametofind = $readini then GUICtrlCreateListViewItem($aArray[$i], $ListView1)
Next
EndIf
EndSwitch
WEnd