wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :2359

Membres en ligne : 0
Invités en ligne : 3
Pub hébergeur
Pourquoi cette pub ?

Valid XHTML 1.0 Transitional

Valid CSS2

Menu forum (navigation):
Pages: 1 Discussion fermée
 
Accueil » Accueil forums » Utilisation générale wxWidgets
» Problème lors de la création d'un fichier de configuration.
Conversation (Résolue) : Problème lors de la création d'un fichier de configuration.
28-01-2016 20:34:35  Problème lors de la création d'un fichier de configuration. #1
PatrickMULOT (Membre)
Lieu: JUMELLES 27220
Inscrit le : 28-01-2016
Messages: 19
Snippets: 0
Tutoriels: 0
Hors ligne
Bonsoir toutes et tous,
j'essaie de créer une 'routine' qui devrait me permettre de créer un fichier de configuration et d'y insérer des paramètres.
A la compilation, je n'ai aucune erreur ou warning; mais lorsque j'exécute ce programme, le fichier ne se crée pas.

En dessous le code de la routine. Je travaille avec Ubuntu 14.04 LTS, IDE Geany et wxWidgets 3.0.2. pour le reste voir ma signature.

merci d'avance à qui pourra m'aider.
Amicalement.

Code wxWidgets:

 
    // check if the configuration file exists, if not create it
    wxFileConfig *conf = new wxFileConfig( wxT( "pmGenealogy" ), wxT( "PMu" ), wxT( "./pmGenealogy.ini" ), wxEmptyString );
 
    if ( ! conf->Exists( wxT( "language" ) ) )
    {
        conf->Write( wxT( "language" ),     wxT( "GB" ) );
        conf->Write( wxT( "application" ),  wxT( "pmGenealogy" ) );
        conf->Write( wxT( "version" ),      wxT( "1.0" ) );
        conf->Write( wxT( "copyright" ),    wxT( "Copyright (c) 2012-" ) );
        conf->Write( wxT( "description" ),  wxT( "Description du logiciel ..." ) );
        conf->Write( wxT( "developer" ),    wxT( "Patrick MULOT pm@pm-gen.fr" ) );
        conf->Flush();
    };
 

ASUS K73SV - Intel Core i7-2630QM CPU @ 2.00GHz × 8 - Ram 4 Gb - HDD 320+500 Gb
Multi-Boot : Ubuntu 16.04 LTS 64 bits - Debian 8.2.0  64 bits - Windows XP3 32 bits

" Heureux sont les gens fêlés car ils laissent passer la lumière ..."  (Michel AUDIARD)
29-01-2016 09:24:36  Re: Problème lors de la création d'un fichier de configuration. #2
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Bonjour.

Ce qui me chagrine dans un premier temps, c'est que tu utilises des fonctions issues de wxWidgets-2.8.12 (notamment, "Exists" qui a été remplacé par "HasGroup").

Sinon, tu peux éventuellement vérifier si le fichier ne se crée pas à un autre endroit que celui dans lequel tu le cherches.

Pour cela, tu as les fonctions "GetPath" ainsi qu'éventuellement "GetGlobalFileName" et "GetLocalFileName".

http://docs.wxwidgets.org/stable/classw … onfig.html

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
29-01-2016 13:14:38  Re: Problème lors de la création d'un fichier de configuration. #3
PatrickMULOT (Membre)
Lieu: JUMELLES 27220
Inscrit le : 28-01-2016
Messages: 19
Snippets: 0
Tutoriels: 0
Hors ligne
Bonjour Xaviou,

Je suis allé voir dans les répertoires de ma machine et j'ai trouvé 2 installations de WxWidgets.
j'ai la 2.8 et la 3.0; que dois-je faire pour virer la 2.8 ?
Je comprends mieux pourquoi certaines instructions ne fonctionnent pas vraiment bien !
Amicalement,
Patrick MULOT.

ASUS K73SV - Intel Core i7-2630QM CPU @ 2.00GHz × 8 - Ram 4 Gb - HDD 320+500 Gb
Multi-Boot : Ubuntu 16.04 LTS 64 bits - Debian 8.2.0  64 bits - Windows XP3 32 bits

" Heureux sont les gens fêlés car ils laissent passer la lumière ..."  (Michel AUDIARD)
29-01-2016 18:20:15  Re: Problème lors de la création d'un fichier de configuration. #4
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Tout dépend de la façon utilisée pour les installer.

Normalement, il est tout à fait possible de faire cohabiter différentes versions.

Vérifie juste que les résultats de wx-config --libs et wx-config --cppflags soient cohérents.

Ensuite, pour sélectionner la version adéquate, il y a une commande "update-alternatives" si mes souvenirs sont bons.

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
29-01-2016 19:24:27  Re: Problème lors de la création d'un fichier de configuration. #5
PatrickMULOT (Membre)
Lieu: JUMELLES 27220
Inscrit le : 28-01-2016
Messages: 19
Snippets: 0
Tutoriels: 0
Hors ligne
Bonsoir Xaviou,
voici la commande pour effectuer la compilation via geany:

Code:

g++ -Wall -c "%f" `wx-config --cxxflags` `wx-config --libs`


et celle pour construire toujours via geany:

Code:

g++ -Wall -o "%e" "%f" `wx-config --cxxflags` `wx-config --libs`


et pour finir la version de update-alternatives:

Code:

Debian update-alternatives version 1.17.5.


Te faut-il autre chose ? dois-je supprimer la version 2.8 par apt-get remove ?

ASUS K73SV - Intel Core i7-2630QM CPU @ 2.00GHz × 8 - Ram 4 Gb - HDD 320+500 Gb
Multi-Boot : Ubuntu 16.04 LTS 64 bits - Debian 8.2.0  64 bits - Windows XP3 32 bits

" Heureux sont les gens fêlés car ils laissent passer la lumière ..."  (Michel AUDIARD)
29-01-2016 20:18:36  Re: Problème lors de la création d'un fichier de configuration. #6
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
On s'est mal compris.

Il faut regarder les résultats de wx-config --libs (tu entres cette commande dans un terminal).
Ensuite, il faut faire la même chose avec wx-config --cxxflags

Si, grâce à ces deux commandes, tu t'aperçois que la version de wxWidgets utilisée n'est pas la bonne, il faut utiliser la commande update-alternatives (mais là, je ne me rappelle plus la syntaxe permettant de sélectionner telle ou telle version).

Je vais essayer de re-basculer sous Debian dans la soirée pour voir si je retrouve ça.

Après, bien entendu, tu peux désinstaller la version 2.8 si tu ne l'utilises pas ou plus, mais sache que ce n'est pas obligatoire.

Je te tiens au courant dès que j'ai du nouveau.

Juste pour info (et si ce n'est pas confidentiel), tu codes quoi comme logiciel de généalogie ?

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
29-01-2016 21:57:47  Re: Problème lors de la création d'un fichier de configuration. #7
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1367
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
C'est bon, je l'ai retrouvé.

Code:

update-alternatives --list wx-config

Cette commande va te lister les différentes possibilités disponibles sur ton système.

Code:

update-alternatives --display wx-config

Cette commande va te permettre de savoir quelle est celle qui est actuellement utilisée.

Code:

sudo update-alternatives --config wx-config

Celle-ci va te permettre de changer de configuration.

A noter que la deuxième commande peut te renvoyer un résultat erroné.

Par exemple, dans mon cas, je n'ai installé que la version 3.0.2.
Par ailleurs, j'ai compilé la version 3.1.0 que j'ai laissé dans un sous-dossier de mon home.

Pour l'utiliser de façon transparente, j'avais remplacé (manuellement) le lien wx-config.
Du coup, la commande "display" m'indiquait  que j'utilisais la version 3.0.2 alors que c'était la version 3.1.0 (tu peux le vérifier en tapant tout simplement wx-config --version).

Lorsque j'ai exécuté la 3ème commande, j'ai eut un avertissement :

Code:

update-alternatives: avertissement: forçage de la réinstallation de l'alternative /usr/lib/x86_64-linux-gnu/wx/config/gtk2-unicode-3.0 car le groupe de liens wx-config est cassé


Mais ensuite, tout est bon (par contre, il faudra que je refasse le lien pour ré-utiliser la version 3.1.0).

Voilà, j'espère que c'est assez clair.

Par contre, ce n'est pas sûr que ton problème d'origine soit réglé avec un simple changement de version.

Tiens-moi au courant.

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
29-01-2016 22:48:00  Re: Problème lors de la création d'un fichier de configuration. #8
PatrickMULOT (Membre)
Lieu: JUMELLES 27220
Inscrit le : 28-01-2016
Messages: 19
Snippets: 0
Tutoriels: 0
Hors ligne
Bonsoir Xaviou,
j'ai exécuté les commandes que tu m'a donné et voici les résultats:

Code:

patrick@patrick-K73SV:~$ wx-config --libs
-L/usr/lib/x86_64-linux-gnu -pthread   -lwx_gtk2u_unofficial_xrc-3.0 -lwx_gtk2u_unofficial_webview-3.0 -lwx_gtk2u_unofficial_html-3.0 -lwx_gtk2u_unofficial_qa-3.0 -lwx_gtk2u_unofficial_adv-3.0 -lwx_gtk2u_unofficial_core-3.0 -lwx_baseu_unofficial_xml-3.0 -lwx_baseu_unofficial_net-3.0 -lwx_baseu_unofficial-3.0
 

Code:

patrick@patrick-K73SV:~$ wx-config --cxxflags
-I/usr/lib/x86_64-linux-gnu/wx/include/gtk2-unicode-3.0-unofficial -I/usr/include/wx-3.0-unofficial -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXGTK__ -pthread
 

Code:

patrick@patrick-K73SV:~$ update-alternatives --list wx-config
/usr/lib/wx/config/base-unicode-3.0-unofficial
/usr/lib/wx/config/gtk2-unicode-3.0-unofficial
/usr/lib/x86_64-linux-gnu/wx/config/base-unicode-release-2.8
/usr/lib/x86_64-linux-gnu/wx/config/gtk2-unicode-release-2.8
 

Code:

patrick@patrick-K73SV:~$ update-alternatives --display wx-config
wx-config - mode automatique
le lien pointe actuellement sur /usr/lib/wx/config/gtk2-unicode-3.0-unofficial
/usr/lib/wx/config/base-unicode-3.0-unofficial - priorité 307
/usr/lib/wx/config/gtk2-unicode-3.0-unofficial - priorité 308
/usr/lib/x86_64-linux-gnu/wx/config/base-unicode-release-2.8 - priorité 287
/usr/lib/x86_64-linux-gnu/wx/config/gtk2-unicode-release-2.8 - priorité 288
La « meilleure » version actuelle est « /usr/lib/wx/config/gtk2-unicode-3.0-unofficial ».
 

Code:

patrick@patrick-K73SV:~$ wx-config --version
3.0.2
 


d'après ce que je vois, je suis bien avec une 3.0.2, ce qui me paraît bizarre, c'est le terme unofficial

j'ai oublié de te répondre pour la généalogie:
logiciel GeneWeb 6.08 et 7.00. Mon site sur Geneanet http://gw.geneanet.org/patrickmulot
l'application que je suis en train de réaliser devrait me permettre de charger un fichier .GED et de visualiser les actes à rechercher concernant les personnes dans cette base.
A partir de cette visu, je peux fouiller dans les archives en ligne ou faire un courrier aux mairies concernées.
c'est tout pour l'instant.
----------
Salut Xaviou,
J'ai mis en résolu ce billet, car j'ai réussi à créer et remplier mon fichier configuration.
Je joint le code pour ceux (ou celles) qui seraient intéressé.

Code wxWidgets:

wxFileConfig *config = new wxFileConfig( "", "", wxT( "./pmGenealogy.conf" ), wxT( "" ), wxCONFIG_USE_RELATIVE_PATH );
 
if ( config->GetNumberOfGroups() == 0 && config->GetNumberOfEntries() == 0 )
{
  config->Write( wxT( "/PARAM/application" ),  wxT( "pmGenealogy" ) );
  config->Write( wxT( "/PARAM/language" ),     wxT( "gb" ) );
  config->Write( wxT( "/PARAM/basedir" ),      wxT( "" ) );
  config->Write( wxT( "/PARAM/progdir" ),      wxT( "" ) );
 
  config->Write( wxT( "/DE/code" ), wxT( "de" ) );
  config->Write( wxT( "/DE/name" ), wxT( "German" ) );
 
  config->Write( wxT( "/FR/code" ), wxT( "fr" ) );
  config->Write( wxT( "/FR/name" ), wxT( "French" ) );
 
  config->Write( wxT( "/GB/code" ), wxT( "gb" ) );
  config->Write( wxT( "/GB/name" ), wxT( "English" ) );
 
  config->Flush();
}
 


Amicalement,

Dernière modification par PatrickMULOT (31-01-2016 18:37:39)


ASUS K73SV - Intel Core i7-2630QM CPU @ 2.00GHz × 8 - Ram 4 Gb - HDD 320+500 Gb
Multi-Boot : Ubuntu 16.04 LTS 64 bits - Debian 8.2.0  64 bits - Windows XP3 32 bits

" Heureux sont les gens fêlés car ils laissent passer la lumière ..."  (Michel AUDIARD)
Menu forum (navigation):
Pages: 1 Discussion fermée
 
Accueil » Accueil forums » Utilisation générale wxWidgets
» Problème lors de la création d'un fichier de configuration.