IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

VC++ .NET Discussion :

Ecrire dans un fichier .ini


Sujet :

VC++ .NET

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Inscrit en
    Juin 2007
    Messages
    362
    D�tails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par d�faut Ecrire dans un fichier .ini
    Bonjour,

    j'utilise depuis peu Visual c++ 2008 Express Edition afin de d�velopper une petite appli en c++.

    J'ai besoin d'�crire 2 informations dans un fichier Ini, sauf que je ne m'en sors pas pour utiliser la classe CWinApp.

    que dois je d�clarer pour l'utiliser?

    sur la faq j'ai trouv� ca :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    CWinApp::WriteProfileString 
    BOOL WriteProfileString( LPCTSTR lpszSection, LPCTSTR lpszEntry, LPCTSTR lpszValue );
    Mais si je tape b�tement ma m�thode "WriteProfileString" avec les bons arguments, ca ne fonctionne pas. Donc je suppose que je dois d�clarer cette class CWinapp?

    merci par avance

  2. #2
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    CWinApp c'est en MFC qui n'existe pas dans la version express

    Regarde plutot celle-ci : http://msdn.microsoft.com/en-us/libr...04(VS.85).aspx

  3. #3
    Membre �clair�
    Inscrit en
    Juin 2007
    Messages
    362
    D�tails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par d�faut
    Merci!

    j'ai donc fait un essai :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    private: System::Void button_WriteFichier_Click(System::Object^  sender, System::EventArgs^  e) {
     
    			 WriteProfileString("ConfigRoot","Source","test");
     
     
    		 }
    Par contre, un message d'erreur m'est retourn�:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     error C2664: 'WriteProfileStringW'*: impossible de convertir le paramètre 1 de 'const char [11]' en 'LPCWSTR'
    1>        Les types pointés n'ont aucun rapport entre eux*; conversion nécessitant reinterpret_cast, cast de style C ou cast de style fonction
    J'en conclut donc qu'il ne comprend pas que ce sont des valeurs de type string que j'ai pass� en param�tre.

  4. #4
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    tu es en unicode, utilise la macro TEXT

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    WriteProfileString(TEXT("ConfigRoot"),TEXT("Source"),TEXT("test"));

  5. #5
    Membre �clair�
    Inscrit en
    Juin 2007
    Messages
    362
    D�tails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par d�faut
    merci

    Depuis , j'ai �volu� un peu le code et je veux que le dernier param�tre soit non plus inscrit en "dur" dans l'appel de la m�thode, mais que ca passe par une variable.

    Donc j'ai d�clar� :

    et quand j'appelle ma m�thode j'utilise donc :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    private: System::Void button_WriteFichier_Click(System::Object^  sender, System::EventArgs^  e) {
     
    			 WriteProfileString(TEXT("ConfigRoot"),TEXT("SourceRoot"),TEXT(DossierSource));
    			 WriteProfileString(TEXT("ConfigRoot"),TEXT("CibleRoot"),TEXT(DossierCible));
     
    		 }
    Par contre j'ai un message d'erreur du fait de la macro TEXT, ce message est le suivant :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    error C2065: 'LDossierSource'*: identificateur non déclaré
    La j'avoue je seche...

    Merci d'avance

  6. #6
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    TEXT fonctionne pour les chaines "tap�es en dur", l�, c'est une String de .Net, il faut que tu la convertisses en w_char * si t'es en unicode, sinon en char*

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [WD11] Ecrire dans un Fichier .INI
    Par hanitax dans le forum WinDev
    R�ponses: 5
    Dernier message: 29/01/2012, 17h00
  2. Ecrire dans un fichier ini
    Par gazelle dans le forum Langage
    R�ponses: 1
    Dernier message: 13/06/2007, 13h45
  3. lire et ecrire dans les fichiers INI sans MFC
    Par skeltryx dans le forum C++/CLI
    R�ponses: 10
    Dernier message: 24/04/2007, 09h03
  4. ecrire dans un fichier .ini
    Par warubi dans le forum C++
    R�ponses: 4
    Dernier message: 08/01/2007, 20h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo