Utilisation de la classe CString et les fonctions associées dans une DLL [Résolu]

Signaler
Messages postés
81
Date d'inscription
vendredi 1 février 2002
Statut
Membre
Dernière intervention
8 octobre 2007
-
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Bonjour,



je souhaiterais pouvoir utiliser la classe CString dans une DLL ainsi que les fonctions du type MessageBox...

Est-ce possible, car cela me génère
un nombre important d'erreurs (undeclared indentifier dès que
j'instancie une variable de type CSring...)



J'ai inclu le fichier stdafx.h Est-ce le bon fichier ?



Je vous remercie par avance de votre réponse.



Amicalement



Warwick.

11 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Quand tu choisis ton type de projet, choisis DLL MFC
Messages postés
539
Date d'inscription
vendredi 6 juin 2003
Statut
Membre
Dernière intervention
14 juillet 2010
1
fo ke tu sois plus précis sur k'elle type de projet tu utilises, si c de l'api win32, mfc.., car il me semble que CString c du MFC, donc...

et si c juste cstring ke tu as besoin dans ta dll fo verif dans msdn mais tu as d'otre fonctions pour la manip de caractere, utilse des char* ou des char tab...

mais sinon tu as plein de sources a ce sujet pour utiliser des procedures stocker dans les dll,...

regardes mes sources certaines, possedent des partagent avec dll, sinon tu as les sources de brunews, ou tu doits avoir une src unikement dédié a ce sujet

ps: il fo ke tu insères dans ton projet le .h ki a été créé pour construire ta dll, et que tu y face référence (#include) soit dans ton .h de ton code, ou dans le cpp de ton code..
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
MessageBox, c'est classique, tu inclus juste <windows.h>. La
différence avec les MFC c'est que ca te fournit des classes (CString
par exemple), et que ca te crée une dépendance avec une DLL spécifique
Messages postés
539
Date d'inscription
vendredi 6 juin 2003
Statut
Membre
Dernière intervention
14 juillet 2010
1
pas mieux...

plus serieusement en api win32, c plus long a assimiler surtout o nivo graf il fo ke tu geres la réaction de tous t éléments, alors ke le MFC, (de mémoire car ca fé longtemps ke j'en fé plus), mais ca fé auto, et pour la gestion de ta dll personnalisée pour importer t fonction ou tes classes, ... etc la déclaration ce fera de la meme facon.

sinon ossi de mémoire tu as une fonction autre ke messagebox pour MFC, il me semble fodrait cherché dans msdn., mais je te laisse la recherche
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Si tu veux utiliser CString, tu crée un projet MFC, tu ne touche pas à ton stdafx.h, et tu n'inclus pas windows.h
Messages postés
81
Date d'inscription
vendredi 1 février 2002
Statut
Membre
Dernière intervention
8 octobre 2007

Merci de vos réponses,
effectivement , je vais essayer d'être plus clair, bien que je débute
encore donc il m'est parfois difficile de répondre sur les choix que
j'ai fait (hasardeux...)



Donc effectivement, je vais regarder en prenant une DLL MFC AppWizard.

Pour l'instant, j'avais pris une Win32 Dynamic Link Library.



Pour ce qui est des CString, il est vrai que je peux remplacer mes variables par des char *.

Mais j'aurais besoin de fonctions de
type MessageBox ... C'est surtout cela qui me pose problème. Savez-vous
si nous pouvons facilement les implémenter ?



Quelle différence fait-on niveau programmation entre DLL MFC, et DLL Win 32 "classique" ?



Je peux les coder de la même manière ? Pour l'appel de la DLL (point d'entrée ...) est-ce pareil ?



Je vais essayer de ressourcer le source de brunews la dessus.



Merci.



Warwick.
Messages postés
81
Date d'inscription
vendredi 1 février 2002
Statut
Membre
Dernière intervention
8 octobre 2007

Merci beaucoup de vos réponses.



Cordialement.

Warwick.
Messages postés
81
Date d'inscription
vendredi 1 février 2002
Statut
Membre
Dernière intervention
8 octobre 2007

Merci !



Google vient voir tonton !!!!!!

Warwick.
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
1
AfxMessageBox

___________________________________________________________
Magicalement
Nono
Messages postés
81
Date d'inscription
vendredi 1 février 2002
Statut
Membre
Dernière intervention
8 octobre 2007

Cette fonction se trouve bien dans stdafx.h ?

Car en l'utilisant je suis confronté aux mêmes erreurs que pour une MessageBox (pour une DLL sans MFC).

Warwick.
Messages postés
81
Date d'inscription
vendredi 1 février 2002
Statut
Membre
Dernière intervention
8 octobre 2007

J'ai inclus afxwin.h et je tombe sur cette erreur.



c:\program files\microsoft visual
studio\vc98\mfc\include\afxv_w32.h(14) : fatal error C1189: #error
: WINDOWS.H already included. MFC apps must not #include
<windows.h>

Error executing cl.exe.

Warwick.