Voyez-vous comme une bogue ?

Sujets variés concernant le développement en PureBasic
PAPIPP
Messages : 534
Inscription : sam. 23/févr./2008 17:58

Voyez-vous comme une bogue ?

Message par PAPIPP »

Bonjour à tous

Voici un petit pb. sous PB573 32 Bits
Avez-vous la même erreur dans l’absence du Nb_car_Min dans le fichier Prefs.txt.
Or après modification de la clé par Minu ou en réduisant ’ _car_’ à ‘_ca_’ tout redevient normal.

Premier Prg en erreur

Code : Tout sélectionner

If CreatePreferences(#PB_Compiler_FilePath+"Prefs.txt", #PB_Preference_GroupSeparator)
  PreferenceGroup("MDP_GEN")
  WritePreferenceString("Alphabet", "20-7F") 
  WritePreferenceString("Alpha_Compl", "€") 
  PreferenceGroup("Saisie_MDP")
  WritePreferenceLong("Nb_car_MAX",16)
  WritePreferenceLong("Nb_car_MIN",10)
  WritePreferenceString("Alpha_Spec"," 20-2F,3A-40,5B-60,7B-7F")
  WritePreferenceString("Alpha_Num"," 30-39")
  WritePreferenceString("Alpha_Maj","41-5A")
  WritePreferenceString("Alpha_Min","61-7A")
  WritePreferenceLong("Nb_car_Spec",1)
  WritePreferenceLong("Nb_car_Num",1)
  WritePreferenceLong("Nb_car_Min",1)
  WritePreferenceLong("Nb_car_Maj",1)
  ClosePreferences()   
  RunProgram(#PB_Compiler_FilePath+"Prefs.txt")
EndIf
OpenPreferences(#PB_Compiler_FilePath+"Prefs.txt")

  ; Groupe à examiner
  PreferenceGroup("Saisie_MDP")
  ; Recherche des clés dans le groupe 'Saisie_MDP'  
  ExaminePreferenceKeys()
  While  NextPreferenceKey() ; Tant qu'il existe une clé à afficher
    Debug  PreferenceKeyName() + " = " + PreferenceKeyValue()  ; Afficher la clé et sa valeur
  Wend
ClosePreferences()
Deuxième Prg normal

Code : Tout sélectionner

If CreatePreferences(#PB_Compiler_FilePath+"Prefs.txt", #PB_Preference_GroupSeparator)
  PreferenceGroup("MDP_GEN")
  WritePreferenceString("Alphabet", "20-7F") 
  WritePreferenceString("Alpha_Compl", "€") 
  PreferenceGroup("Saisie_MDP")
  WritePreferenceLong("Nb_car_MAX",16)
  WritePreferenceLong("Nb_car_MIN",10)
  WritePreferenceString("Alpha_Spec"," 20-2F,3A-40,5B-60,7B-7F")
  WritePreferenceString("Alpha_Num"," 30-39")
  WritePreferenceString("Alpha_Maj","41-5A")
  WritePreferenceString("Alpha_Min","61-7A")
  WritePreferenceLong("Nb_ca_Spec",1)
  WritePreferenceLong("Nb_ca_Num",1)
  WritePreferenceLong("Nb_ca_Min",1)
  WritePreferenceLong("Nb_ca_Maj",1)
  ClosePreferences()   
  RunProgram(#PB_Compiler_FilePath+"Prefs.txt")
EndIf
OpenPreferences(#PB_Compiler_FilePath+"Prefs.txt")

  ; Groupe à examiner
  PreferenceGroup("Saisie_MDP")
  ; Recherche des clés dans le groupe 'Saisie_MDP'  
  ExaminePreferenceKeys()
  While  NextPreferenceKey() ; Tant qu'il existe une clé à afficher
    Debug  PreferenceKeyName() + " = " + PreferenceKeyValue()  ; Afficher la clé et sa valeur
  Wend
ClosePreferences()
A+
Il est fort peu probable que les mêmes causes ne produisent pas les mêmes effets.(Einstein)
Et en logique positive cela donne.
Il est très fortement probable que les mêmes causes produisent les mêmes effets.
Marc56
Messages : 2197
Inscription : sam. 08/févr./2014 15:19

Re: Voyez-vous comme une bogue ?

Message par Marc56 »

Dans le premier exemple tu utilises deux fois le même nom de clé, donc le programme écris deux fois la même clé une fois avec la valeur 10 puis avec valeur 1

WritePreferenceLong("Nb_car_MIN",10)
...
WritePreferenceLong("Nb_car_Min",1)

:wink:
PAPIPP
Messages : 534
Inscription : sam. 23/févr./2008 17:58

Re: Voyez-vous comme une bogue ?

Message par PAPIPP »

Merci Marc56

Ma vue baisse

A+
Il est fort peu probable que les mêmes causes ne produisent pas les mêmes effets.(Einstein)
Et en logique positive cela donne.
Il est très fortement probable que les mêmes causes produisent les mêmes effets.
Répondre