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

MFC Discussion :

Pb Dll de resource et LoadString


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Avril 2004
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 122
    Par défaut Pb Dll de resource et LoadString
    Bonjour,

    Voici mon problème :

    Dans mon application je charge une Dll de langue (anglais ou francais), avec la francaise tout va bien mais avec l'anglaise, je ne peux pas charger certaines chaines, le LoadString ne fonctionne pas.

    Après maintes recherches, j'ai constaté qu'en faite ce sont toutes les chaines d'un segment de la stringtable que je ne peux pas charger, il semblerai que ce segment ne soit pas monté en mémoire lors du LoadLibrary de ma DLL.

    J'ai lu en fait que la stringtable était décomposé en segment de 16 chaines, d'ou la séparation dans l'éditeur sous visual C++.

    Quelqu'un a-t-il déjà eu ce problème ?
    Quelqu'un a-t-il une solution, je m'arrache des cheveux sur ce problème .

    Merci.

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    etrange ,tu procedes comme dans la faq ?
    http://c.developpez.com/faq/vc/?page...gMultiLanguage

  3. #3
    Membre éprouvé
    Inscrit en
    Avril 2004
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 122
    Par défaut
    Je n'avais pas fait exactement comme dans la FAQ mais je viens d'essayer et j'ai toujours le même résulat. C'est à n'y rien comprendre, je pense qu'il doit y avoir un problème dans mon .rc mais de la à savoir lequel, c'est une autre histoire .

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    un test simple:
    tu sauvegades ton .rc anglais...
    tu le remplaces par ton .rc francais .
    tu refais ta dll et tu testes.
    resultat des courses ?


  5. #5
    Membre éprouvé
    Inscrit en
    Avril 2004
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 122
    Par défaut
    Bonjour,
    Avec le .rc français, pas de problème.
    Donc il y a un problème dans mon rc anglais.
    Je viens d'épurer mon .rc anglais en ne gardant qu'une petite partie de la stringtable mais le problème persiste, je n'y comprend vraiment rien.

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    hum le fichier resource.h de ta dll (situé dans son repertoire ) est a jour ?
    il y a des chances que non ...
    ce qui expliquerait que tu n'arrives pas a lire certaines chaines.

  7. #7
    Membre éprouvé
    Inscrit en
    Avril 2004
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 122
    Par défaut
    Si le fichier resource.h est à jour, les deux Dll utilises le même.
    En fait j'ai trouvé le problème, en haute du .rc français il y a ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)
    #ifdef _WIN32
    LANGUAGE LANG_FRENCH, SUBLANG_FRENCH
    #pragma code_page(1252)
    #endif //_WIN32
    et dans le .rc anglais il y a ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
    #ifdef _WIN32
    LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
    #pragma code_page(1252)
    #endif //_WIN32
    Si je remplace ce code dans le .rc anglais par le code du .rc français ca fonctionne. Je ne comprends vraiment pas pourquoi .

  8. #8
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    ouaip bizarre tout ça !

  9. #9
    Membre éprouvé
    Inscrit en
    Avril 2004
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 122
    Par défaut
    Effectivement.

    Merci pour ton aide, je n'est pas résolu le problème mais je peux le contourner maintenant .

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/06/2007, 15h08
  2. Réponses: 1
    Dernier message: 24/04/2007, 09h27
  3. [MFC/C++] Appel de LoadString dans une dll
    Par fleur_de_rose dans le forum Visual C++
    Réponses: 5
    Dernier message: 16/10/2006, 19h44
  4. Intégration static d'une resource DLL
    Par dug dans le forum MFC
    Réponses: 1
    Dernier message: 14/04/2006, 18h07
  5. Dll et resources
    Par Tosh dans le forum Windows
    Réponses: 6
    Dernier message: 06/01/2006, 10h33

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