Accueil > Forum > > > > GetPrivateProfileString : lire un fichier .INI
GetPrivateProfileString : lire un fichier .INI
lundi 29 mars 2010 à 21:41:22 |
GetPrivateProfileString : lire un fichier .INI

MaxMax0
|
Bonjour,
Je n'arrive pas à compiler un exemple très simple (j'ai beau être débutant j'ai l'impression que le problème ne vient pas du code) :
J'ai le message d'erreur ci-dessous :
g:\visual_cpp_app\ini\ini.cpp(18) : error C2373: 'GetPrivateProfileStringW' : redéfinition ; modificateurs de type différents
e:\program files\microsoft sdks\windows\v6.0a\include\winbase.h(7796) : voir la déclaration de 'GetPrivateProfileStringW'
g:\visual_cpp_app\ini\ini.cpp(58) : error C3861: 'GetPrivateProfileStringW' : identificateur introuvable
J'ai essayé x variantes du code joint mais sans succès.
J'utilise Visual C++ sous WinXP MAIS l'installation est sur un disk E: au lieu du disk C:. Est-ce que le problème peut venir de cela ? (le windows.h est bien lu sur le disk E: mais n'essaye-t-il pas de faire un lien avec une .dll du disk C: ?.
Code C/C++ : #include <stdlib.h>
#include <stdio.h>
#include <windows.h>
DWORD GetPrivateProfileString(
LPCTSTR lpAppName,
LPCTSTR lpKeyName,
LPCTSTR lpDefault,
LPTSTR lpReturnedString,
DWORD nSize,
LPCTSTR lpFileName
);
int main(int argc, char *argv[])
{
char temp[100];
GetPrivateProfileString("TEST", "Cle1", "", temp, 100, "Test.ini" );
printf("Resultat = %s",temp);
}
La déclaration dans fichier winbase.h :
Code C/C++ : WINBASEAPI
DWORD
WINAPI
GetPrivateProfileStringW(
__in_opt LPCWSTR lpAppName,
__in_opt LPCWSTR lpKeyName,
__in_opt LPCWSTR lpDefault,
__out_ecount_part_opt(nSize, return + 1) LPWSTR lpReturnedString,
__in DWORD nSize,
__in_opt LPCWSTR lpFileName
);
J'ai essayé de remplacer dans mon code :
- LPCTSTR par LPCWSTR : idem
MaxMax0
|
|
lundi 29 mars 2010 à 22:26:18 |
Re : GetPrivateProfileString : lire un fichier .INI

BruNews
|
Réponse acceptée !
Pourquoi tu remets un proto de GetPrivateProfileString au dessus de main() ???
Vire cela et compile en ANSI au lieu de UNICODE et tout rentrera dans l'ordre.
Sinon mets tes chaines au format UNICODE.
ciao...
BruNews, MVP VC++
|
|
mardi 30 mars 2010 à 21:28:44 |
Re : GetPrivateProfileString : lire un fichier .INI

MaxMax0
|
Merci
J'ai réussi à compiler et faire fonctionner le prog. mais j'avoue que je n'ai pas bien compris ce qu'il faut faire pour compiler en ANSI ou UNICODE.
Je m'en suis sorti en décochant "Hériter des paramètres par défaut du parent ou du projet" sous propriété / ... / Définition du préprocesseur : Les valeur héritées étaient "_UNICODE" et "UNICODE"
Je n'ai pas trop trouvé d'info sur le Web à ce sujet
"Sinon mets tes chaines au format UNICODE" ?? comment fait-on ?
MaxMax0
|
|
mardi 30 mars 2010 à 22:56:36 |
Re : GetPrivateProfileString : lire un fichier .INI

BruNews
|
Réponse acceptée !
TCHAR szappname[] = L"MonProg";
Voir aussi _T ou _TEXT.
http://brunews.com/brunews/download/JR4.zip
Unicode y est complètement détaillé au chapitre 2.
ciao...
BruNews, MVP VC++
|
|
mercredi 31 mars 2010 à 21:10:37 |
Re : GetPrivateProfileString : lire un fichier .INI

MaxMax0
|
Merci
Je vais étudier l'aide. Les quelques lignes que j'ai déja lu mon déja un peu éclairci les idées.
MaxMax0
|
|
Cette discussion est classée dans : code, ini, cpp, size, lpctstr
Répondre à ce message
Sujets en rapport avec ce message
INI :: AIDEZ MOI SVP !! [ par bdkiller ]
Bonjour,Je suis newbie dans le Cpp. J'utilise Borland Cpp Builder.J'ai un petit problème avec les fichiers ini. Et vu que je n'arrive pas à le résoudr
effet typewriter en cpp [ par gasy72 ]
en fait je voulais demander si par hasard il est possible de faire un effet machine à ecrire (typewriter ) en c ou cpp et comment le faire? quelqun
Ajout un fichier .cpp dans un projet [vc++6] [ par dulac02 ]
Salut a tousje galère sous vc++6 :j'ai crée un fichier FichierIni.cpp dans lequel j'ai mis le code suivant :#include "FichierIni.h"void Lire_Ini ( LPC
if, else... besoin de coup de main [ par bdkiller ]
Bonjour à tous!Voilà j'ai ceci comme code:if (Edit1->Text == ini->ReadString("userdata","username","")) if (Edit2->Text == ini->ReadStr
graphisme avec dev cpp [ par michelfallet ]
Quelle librairie graphique, la plus simple, peut on utiliser avec dev cpp ?ou la télécharger ?Passe t-on alors sous le mode projet windows au lieu de
bug? code::block effacement automatique de main.cpp [ par kadolodai2 ]
Bonjours, J'ai un souci sur code::block:Lorsque je crée une projet wxWidget (new/project/wxWidget project) tout est ok!lorsque je le compile et lance
tour de hanoi [ par houcem001 ]
salut je suis entrain de programmer le tour de hanoi mais j'ai un probleme au deplacement automatique des disques. je souhaite que les disques se dep
Code QBasic à convertir Cpp [ par SneakGuy ]
Salut, j'ai besoin d'aide pour convertir ce code QBasic en Cpp...*Désoler, tous les signes"plus" sont remplacés par la lettre p. Merci.CLSFOR x = 1
HELP !!! Après plantage fichiers cpp transformés en binaire : code perdu !!!!! [ par ngryman ]
J'y crois pas ! J'ai lancé mon progrmme, il a planté, une erreur windows s'est produite et j'ai redémarré mon pc, et après le fichier cpp principal de
Visual Cpp [ par Bringdal ]
Voila... mon probleme est simpleje n'arrive pas à afficher un executable j'ai ajouté une variable privé de type CXXXSocket
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|