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 :

CDialog pour Windows CE


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Par défaut CDialog pour Windows CE
    Bonjour,

    Je suis entrain de développer une DLL pour Windows CE qui sera intégrée à Pocket Outlook. J'ai besoin d'afficher une boîte de dialog de configuration donc j'ai créé une ressource (CDialog) mais je n'arrive pas à l'afficher.
    Lorsque j'exécute la méthode DoModal sur une instance de ma boîte de dialogue, je reçois le code d'erreur -1.
    Que faut-il faire pour que la boîte s'affiche ?

    Extrait de mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void CePimCommand (HWND hWnd, PIMTYPE ptData, UINT uDataCount, HANDLE *rghData, void *pReserved)
    {
    	CWnd * win = CWnd::FromHandle(hWnd);
    	MyDialog * dialog = new MyDialog(win);
    	int ret=dialog->DoModal();
    	if(ret==-1)
    	{
    		MessageBeep(MB_ICONEXCLAMATION);
    	}
    }
    Merci pour votre aide,

    julozi

  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,
    ou est situé la Dialogue dans la DLL ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Par défaut
    Salut,

    J'ai ajouter une ressource en faisant Insert/New Form...
    Ceci m'a créé un nouveau fichier MyDialog.cpp et un fichier header dans mon projet.
    J'ai fait un include du header de la dialogue dans mon source principale donc je suppose que le lien est fait correctement.
    La compilation passe sans problème.

  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
    ben tu reponds pas a ma question lol ,
    essaye de ne pas mettre de parent dans ta dialogue .
    sinon de verifier les attributs de la dialogue entre autre que le style popup soit selectionné.


  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Par défaut
    Ok, je ne comprend pas trop bien la question alors
    Je vais essayé une autre réponse
    En fait, la dialogue doit être affiché au moment où l'utilisateur souhaite effectuer l'action à partir de Pocket Outlook...
    Sinon, je ne sais pas trop OU la dialogue est situé dans la DLL.

    J'ai vérifié les attributs de la dialogue. Le style Popup est bien activé.
    J'ai essayé d'instancier sans spécifier de parent mais ça ne marche toujours pas.

  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
    re,
    une DLL n'est pas un programme .
    tu developpes un DLL qui va etre liée a un programme .
    la ressource de cette dialogue est située dans les ressources du programme ou dans la ressource de ta DLL ?
    et quel type de DLL tu as generé ?


  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Par défaut
    Alors la ressource de la dialogue est dans la DLL que je développe.
    Je suis un peu inexpérimenté en dév Windows mais le type de DLL que je génère semble accéder les MFC à travers un DLL partagé (donc pas en static).

  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
    ok
    j''ai pas l'ide de developpement pocket sous la main mais essaye la chose suivante:
    dans le menu view ou equivalent tu devrais trouver une option resource includes.
    dans une partie du devrais une section qui permet l'ajout d'un fichier .rc
    a rajouter .
    rajoute l'include de ton .rc en provenance de ta DLL.
    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    #define _AFX_NO_SPLITTER_RESOURCES
    #define _AFX_NO_OLE_RESOURCES
    #define _AFX_NO_TRACKER_RESOURCES
    #define _AFX_NO_PROPERTY_RESOURCES
     
    #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)
    #ifdef _WIN32
    LANGUAGE 12, 1
    #pragma code_page(1252)
    #endif
    #include "res\VisualGes.rc2"  // non-Microsoft Visual C++ edited resources
    #include "l.fra\afxres.rc"          // Standard components
    #include "l.fra\afxprint.rc"        // printing/print preview resources
    #include "monfichier.rc"         // c'est mon fichier rc de la DLL attention au chemin de recherche.
    #endif

  9. #9
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Par défaut
    Je viens à l'instant de trouver la solution à mon problème.
    En fait, pour faire un appel à une fonction MFC à partir d'une fonction X de mon dll, il faut que cette fonction X exécute la macro suivante avant toute autre chose :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AFX_MANAGE_STATE(AfxGetStaticModuleState());
    Ceci s'explique par le fait que mon dll crée des liens dynamiquement avec les fonctions de MFC donc il faut avertir explicitement le compilateur.

    Merci pour votre aide,

    Julozi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Stratégie d'installation des fixes pour windows 2000/2003
    Par bill4134 dans le forum Autres Logiciels
    Réponses: 20
    Dernier message: 07/07/2004, 16h04
  2. les cahiers du programmeur "l'installeur pour Windows&
    Par BRAUKRIS dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 26/05/2004, 10h56
  3. [Blob] PostGreSQL Beta4 pour Windows
    Par YanK dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 09/10/2003, 11h46
  4. Créer de programme pour WIndows avec Turbo Pascal
    Par kaygee dans le forum Turbo Pascal
    Réponses: 16
    Dernier message: 20/08/2003, 23h22
  5. Format d'un exe pour DOS et pour Windows
    Par Alfhiger dans le forum Assembleur
    Réponses: 4
    Dernier message: 12/06/2002, 11h57

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