[Tuto] L'utilisation des fichiers ini
Règles du forum
Tutoriel "La programmation avec Autoit" : https://openclassrooms.com/fr/courses/1 ... vec-autoit
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
Tutoriel "La programmation avec Autoit" : https://openclassrooms.com/fr/courses/1 ... vec-autoit
- Iste
- Niveau 11
- Messages : 1870
- Enregistré le : jeu. 04 déc. 2008 14:21
- Localisation : 76
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Haha ! C'est le registre qui est retourné.
Changez des trucs dans [HKEY_CURRENT_USER\Control Panel\International] et vous verrez ^^
La 2em section est [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] semblerait il
Changez des trucs dans [HKEY_CURRENT_USER\Control Panel\International] et vous verrez ^^
La 2em section est [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] semblerait il
Signez ici
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Oh ça m'intéresse ça, je peux avoir un exemple précis ?Tlem a écrit :En effet dans certains cas non prévus , ta fonction retourne un nombre erroné de sections
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- Iste
- Niveau 11
- Messages : 1870
- Enregistré le : jeu. 04 déc. 2008 14:21
- Localisation : 76
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Le probleme semble venir de windows car cette page :
http://www.en.na.mcneel.com/doslib/conf ... getini.htm
Nous donne en exemple pour "C:\\Windows\\win.ini"or chez moi j’obtiens
J'en conclu donc que AutoIt utilise l'api windows qui a un comportement non documenté.
Mais il ne faut pas oublier que les .ini sont vieux, et ne devraient plus etre utilisé...
http://www.en.na.mcneel.com/doslib/conf ... getini.htm
Nous donne en exemple pour "C:\\Windows\\win.ini"
► Afficher le texte
► Afficher le texte
Mais il ne faut pas oublier que les .ini sont vieux, et ne devraient plus etre utilisé...
Signez ici
- blacksoul305
- Membre émérite
- Messages : 957
- Enregistré le : ven. 18 mars 2011 11:49
- Localisation : Au pays des programmeurs.
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Ah non monsieur, impossible de me passer des .ini moi ! Ils sont trop utiles !Iste a écrit : Mais il ne faut pas oublier que les .ini sont vieux, et ne devraient plus etre utilisé...

EDIT : Tlem, nouveau message.
Étudiant en 2ème année de Licence Informatique.
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
@mikell
Prend un de tes fichiers .ini et rajoute un ";" en début de ligne pour la mettre en commentaire.
@Iste
Je suis entièrement d'accord, mais la fonction ne devrait pas faire le distingo entre un fichier standard et le win.ini ou le system.ini.
Je me doute bien que c'est probablement lié à l'API, mais dans ce cas il faudrait que l'information soit notifiée dans la documentation.
Prend un de tes fichiers .ini et rajoute un ";" en début de ligne pour la mettre en commentaire.
@Iste
Je suis entièrement d'accord, mais la fonction ne devrait pas faire le distingo entre un fichier standard et le win.ini ou le system.ini.
Je me doute bien que c'est probablement lié à l'API, mais dans ce cas il faudrait que l'information soit notifiée dans la documentation.

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é".
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é".
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
ça serait la moindre des choses, parce que tout obsolètes que peuvent être les fichiers ini, les fonctions pour les traiter sont encore proposées dans Autoit et largement utiliséesTlem a écrit :Je me doute bien que c'est probablement lié à l'API, mais dans ce cas il faudrait que l'information soit notifiée dans la documentation.
Le bug que tu as relevé dans mon script est quand même plus facile à corriger
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Oui, mais si je ne l'avais pas signalé, il aurait pu mettre en cause n'importe quel fichier .ini, alors que le bug relevé sur IniReadSection() ne concerne que les fichiers win.ini et system.ini.
Le besoin de traitement de ces fichiers est quand même bien plus limité.

Le besoin de traitement de ces fichiers est quand même bien plus limité.

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é".
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é".
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Tout à fait Thierry, mais le bug report ça fait aussi partie du jeu, sans fondamentalement remettre le script en cause 
Pour IniReadSection() , une fonction qui s'en va lire le registre alors qu'elle est censée lire un fichier, c'est quand même glauque quelque part

Pour IniReadSection() , une fonction qui s'en va lire le registre alors qu'elle est censée lire un fichier, c'est quand même glauque quelque part

" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
Uniquement pour le win.ini et le system.ini et cela à cause des API de Microsoft.
Je serais curieux de savoir comment réagit un code C dans les mêmes conditions.


Je serais curieux de savoir comment réagit un code C dans les mêmes conditions.



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é".
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é".
Re: [Tuto] L'utilisation des fichiers ini
Re
J'ai trouvé une doc qui peut être intéressante, concernant les fichiers INI et les API :
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
La partie Remarks parle d'une clé dans la base de registre qui permet de mapper les fichiers INI.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping
Win.ini et system.ini sont présents, et effectivement les chemins des fichiers ne sont pas indiqués : c'est pour ça que si on renomme notre fichier en win.ini ou tout autre nom défini dans la clé IniFileMapping, on obtiens nos informations, plus celle qui sont mappées.
Mais comme le dit Tlem, ça devrait apparaître dans la doc des fonctions IniRead...
J'ai trouvé une doc qui peut être intéressante, concernant les fichiers INI et les API :
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
La partie Remarks parle d'une clé dans la base de registre qui permet de mapper les fichiers INI.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping
Win.ini et system.ini sont présents, et effectivement les chemins des fichiers ne sont pas indiqués : c'est pour ça que si on renomme notre fichier en win.ini ou tout autre nom défini dans la clé IniFileMapping, on obtiens nos informations, plus celle qui sont mappées.
Mais comme le dit Tlem, ça devrait apparaître dans la doc des fonctions IniRead...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Re: [Tuto] L'utilisation des fichiers ini
Je voudrais quand meme soutenir Tlem. Quoi que tu puisse penser Mikell, quand une fonction de base existe, elle sera toujours plus efficace qu'un script créé par une personne. Tout simplement parce que le nombre de bugs possibles est reporté beaucoup plus rapidement.
Ton script est peut être simple a modifier, mais il ne prend pas encore compte de tous les cas possibles d'un .ini, et certains comportements provoqueront une erreur dans ta fonction, alors que ce comportement aura 99,99999% de chance d'avoir déjà été corrigé dans une fonction de base. Tu ne peux juste pas rivaliser entre les quelques dizaines de milliers de script qui utilisent IniRead et les 30 qui utilisent le tien. C'est statistique.
Ton script est peut être simple a modifier, mais il ne prend pas encore compte de tous les cas possibles d'un .ini, et certains comportements provoqueront une erreur dans ta fonction, alors que ce comportement aura 99,99999% de chance d'avoir déjà été corrigé dans une fonction de base. Tu ne peux juste pas rivaliser entre les quelques dizaines de milliers de script qui utilisent IniRead et les 30 qui utilisent le tien. C'est statistique.
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [Tuto] L'utilisation des fichiers ini
C'est clair, entre un script vieux de 24 heures et des fonctions qui tournent depuis des années, ya pas photo

Hier samedi, mikell a écrit :C'était effectivement un exercice de style
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )