[R] Renvoyer nom de section si key est correct (.ini)

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
TiOm4cK
Niveau 3
Niveau 3
Messages : 45
Enregistré le : sam. 12 nov. 2011 10:36
Status : Hors ligne

[R] Renvoyer nom de section si key est correct (.ini)

#1

Message 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
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 :wink:
Modifié en dernier par TiOm4cK le sam. 15 mars 2014 02:05, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Renvoyer nom de section si key est correct (.ini)

#2

Message 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.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
TiOm4cK
Niveau 3
Niveau 3
Messages : 45
Enregistré le : sam. 12 nov. 2011 10:36
Status : Hors ligne

Re: [..] Renvoyer nom de section si key est correct (.ini)

#3

Message 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 :P

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
Répondre