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 :

[VC++ 2005 Express] PB avec les API (SDK)


Sujet :

MFC

  1. #1
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut [VC++ 2005 Express] PB avec les API (SDK)
    Bonjour,

    Après mon problème (que je ne parviens pas à résoudre) d'éxecutable, et la remarque (je précise que ce n'est pas une critique avant qu'il est un malentendu) sur le fait que mon code était du .Net j'ai voulu me mettre au natif mais là j'ai à nouveau des problèmes :

    J'ai voulu suivre un tuto pour faire des interfaces en natif avec les APIs, j'ai donc installé le SDK nécessaire et je l'ai configurer (à priori comme il faut) dans vc++ d'après la doc du SDK, j'ai donc commencé à étudier le premier code du tuto et paffff je gagne une collection d'erreur.

    Voici le code :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    #include <windows.h>
     
     
    LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM);
     
    int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevInstance,
                                                    LPSTR lpCmdLine, int nCmdShow)
    {
        HWND hwnd;
        MSG msg;
        WNDCLASS wc;
     
        wc.style = 0;
        wc.lpfnWndProc = MainWndProc;
        wc.cbClsExtra = 0;
        wc.cbWndExtra = 0;
        wc.hInstance = NULL;
        wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
        wc.hCursor = LoadCursor(NULL, IDC_ARROW);
        wc.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
        wc.lpszMenuName =  NULL;
        wc.lpszClassName = "MaWinClass";
     
        if(!RegisterClass(&wc)) return FALSE;
     
        hwnd = CreateWindow("MaWinClass", "Titre", WS_OVERLAPPEDWINDOW,
                                       CW_USEDEFAULT, CW_USEDEFAULT, 400, 300,
                                                       NULL, NULL, hinstance, NULL);
        if (!hwnd) return FALSE;
     
        ShowWindow(hwnd, nCmdShow);
        UpdateWindow(hwnd);
     
     
        while (GetMessage(&msg, NULL, 0, 0))
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
        return msg.wParam;
    }
    /******************************************************************************/
     
    LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
    {
        switch (uMsg)
        {
            case WM_CREATE:
     
                return 0;
     
            case WM_DESTROY:
                PostQuitMessage(0);
                return 0;
     
            default:
                return DefWindowProc(hwnd, uMsg, wParam, lParam);
        }
    }
    Et maintenant le log avec ... 12 erreurs
    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
    17
     
     
    Compiling...
    window.cpp
    Linking...
    window.obj : error LNK2019: unresolved external symbol __imp__PostQuitMessage@4 referenced in function "long __stdcall MainWndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?MainWndProc@@YGJPAUHWND__@@IIJ@Z)
    window.obj : error LNK2019: unresolved external symbol __imp__DefWindowProcA@16 referenced in function "long __stdcall MainWndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?MainWndProc@@YGJPAUHWND__@@IIJ@Z)
    window.obj : error LNK2019: unresolved external symbol __imp__TranslateMessage@4 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__DispatchMessageA@4 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__GetMessageA@16 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__UpdateWindow@4 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__ShowWindow@8 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__CreateWindowExA@48 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__RegisterClassA@4 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__LoadCursorA@8 referenced in function _WinMain@16
    window.obj : error LNK2019: unresolved external symbol __imp__LoadIconA@8 referenced in function _WinMain@16
    Debug\test.exe : fatal error LNK1120: 11 unresolved externals
    Voilà mon problème, qu'ai-je fait encore comme con***** ^^ ???

    HS : Quels sont les inconvéniants du .Net ?

    Voilà j'espere que quelqu'un peut m'aider car j'aimerais bien apprendre le C++ et je n'ai pas les moyens de m'acheter une version qui fait des fenêtres en natifs et encore moins envis de retourner sur VC++ 6.0 (qui n'était pas très légale ce qui me donne une raison de plus pour passer au Express)

    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Visiblement, le SDK n'est pas si bien configuré que ça: Tu as les en-têtes, mais pas les librairies.
    Ou bien, c'est que les librairies utilisées (des librairies statiques d'importation de DLL) ne sont pas précisées dans les options du projet (onglet LINK sous Visual 6) : Essaie de rajouter user32.lib, kernel32.lib et gdi32.lib dans tes options. (normalement, tu n'auras pas besoin de plus. Il n'est même pas sûr que tu aies besoin des trois...)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    J'avais pourtant ajouter le chemin des libs. Les 3 libs que tu cites sont dans le SDK ?

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    oui, elles y sont. Mais si tu as ajouté le chemin, il faut peut-être préciser dans les options du projet que tu les utilises.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    Bah il doit surement le savoir que j'utilise le SDK car il trouve windows.h

  6. #6
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    Bon peut-être que la cohabitation VC++ 2005 Express et VC++ 6 n'est pas top donc je dégage VC++ 6.

    Voilà est-ce que quelq'un pourrait m'expliquer en partant de zéro comment bien installer et configurer VC++ 2005 Express et le SDK pour que sa marche.

    J'ai fais un test rapide avec ce même code sous VC++ 6 mais j'obtiens des erreurs donc je le vire et garde mon VC++ tous neuf ^^.

    EDIT : Oups désolé pour le double poste, je me suis planté entre édtier et Répondre ^^.

  7. #7
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Pour débloquer la situation, ajoute ça à ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #pragma comment(lib, "gdi32.lib")
    #pragma comment(lib, "user32.lib")

  8. #8
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    J'ai ajouté ce que tu ma dit au début de mon code et voici ce que j'obtiens dans une fenêtre de VC++ :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    'test.exe': Loaded 'C:\Documents and Settings\dori@n\Mes documents\Visual Studio 2005\Projects\test\Debug\test.exe', Binary was not built with debug information.
    'test.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', No symbols loaded.
    'test.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', No symbols loaded.
    'test.exe': Loaded 'C:\WINDOWS\system32\user32.dll', No symbols loaded.
    'test.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', No symbols loaded.
    The program '[1492] test.exe: Native' has exited with code 0 (0x0).
    Le prog ne s'éxecute toujours pas. J'ai testé ce code sous DevC++ et il marche donc c'est bien un problème dû à mon VC++. Pourrais-tu me dire comment le configurer correctement pour qu'il fonctionne avec le SDK STP ? (si tu as un peu de temps de libre pour sa)

  9. #9
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Si, il s'est exécuté, et là c'est juste le debuger qui t'informe qu'il n'a pas les symboles des dll (systèmes) chargées lors de l'exécution. T'es sûr que t'as pas un joli exe dans un répertoire ?

  10. #10
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    Comme un con j'avais cliqué sur non lorsqu'il ma demander de continuer le debugage en passant qu'il me demandait encore si je voulais éxécuter une ancienne version de mon projet.

    Bon effectivement sa se lance, je vais pouvoir tester d'autre exemple voir si sa marche pour le reste ^^.

    Peux-tu m'expliquer en gros le trucs des symboles des dll ?

    Et comment faire une belle configuration pour me passer de ce genre de problème ou es-ce que c'est la seul solution pour la version Express ?

    Merci encore de m'avoir aider

  11. #11
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Les symboles, c'est pas méchant. Le fait d'avoir les symboles des dll systèmes (ou autre), ça améliore la qualité du debugging car le debugger a des infos sur les fonctions, leurs paramètres, etc... et donc si tu as un plantage dans l'utilisation de Win32 tu auras plus d'infos. Mais ces symboles sont spécifiques à chaque release d'une dll système, et faut les télécharger chez MS. On s'en passe sans problèmes.

  12. #12
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    Citation Envoyé par Aurelien.Regat-Barrel
    Les symboles, c'est pas méchant. Le fait d'avoir les symboles des dll systèmes (ou autre), ça améliore la qualité du debugging car le debugger a des infos sur les fonctions, leurs paramètres, etc... et donc si tu as un plantage dans l'utilisation de Win32 tu auras plus d'infos. Mais ces symboles sont spécifiques à chaque release d'une dll système, et faut les télécharger chez MS. On s'en passe sans problèmes.
    Désolé mais j'ai pas trop compris si sa pose problème ou pas ???

    Tel que le programme est compilé, es-ce que je peux par exemple le faire tourner sous un autre windows (95 - XP) ?

    Que puis-je faire pour supprimer ces erreurs hormis en ajoutant ces 2 lignes ? (Car sous DevC++, il me pose pas ce problème, alors soit il est pas assez évolué de ce côté soit mon VC++ est mal configuré)

    Et enfin éxiste-t-il un éditeur de fenêtre (en API les fenêtres ^^) qui génere un code source ou un fichier ressource à inclure lors de la programmation proprement dite ou es-ce que je dois tout taper à la main ?

  13. #13
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par dorian833
    Désolé mais j'ai pas trop compris si sa pose problème ou pas ???

    Tel que le programme est compilé, es-ce que je peux par exemple le faire tourner sous un autre windows (95 - XP) ?

    Que puis-je faire pour supprimer ces erreurs hormis en ajoutant ces 2 lignes ? (Car sous DevC++, il me pose pas ce problème, alors soit il est pas assez évolué de ce côté soit mon VC++ est mal configuré)
    tu mélanges plusieurs trucs. Ce message:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    'test.exe': Loaded 'C:\Documents and Settings\dori@n\Mes documents\Visual Studio 2005\Projects\test\Debug\test.exe', Binary was not built with debug information. 
    'test.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', No symbols loaded. 
    'test.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', No symbols loaded. 
    'test.exe': Loaded 'C:\WINDOWS\system32\user32.dll', No symbols loaded. 
    'test.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', No symbols loaded. 
    The program '[1492] test.exe: Native' has exited with code 0 (0x0).
    vient du débogueur. Y'a aucune erreur, tout est normal. Celui là:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Compiling... 
    window.cpp 
    Linking... 
    window.obj : error LNK2019: unresolved external symbol __imp__PostQuitMessage@4 referenced in function "long __stdcall MainWndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?MainWndProc@@YGJPAUHWND__@@IIJ@Z)

    vient du linker. Là, tu n'as pas eu d'exe. Pourquoi ? Parce qu'en compilant, tu utilises les fonctions PostQuitMessage etc... La compilation fonctionne, car elles sont déclarées dans <windows.h>, et il sait où est <windows.h>.
    Le link : il doit lier ton exe à la fonction PostQuitMessage. Mais, il sait pas où elle est.
    De même que tu #include <windows.h>, tu dois "inclure" les lib avec qui il faut linker. Tu as configuré dans l'IDE l'endroit où sont ces libs, mais lui il va pas les inclure automatiquement. En faisant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #pragma comment(lib, "gdi32.lib") 
    #pragma comment(lib, "user32.lib")
    Tu dis au linker "d'inclure" gdi32.lib et user32.lib. Comme il sait où elles sont, ça marche.
    Là, tu l'a fait par le code. Tu peux le faire autrement dans l'IDE, propriétés de ton projet, onglet Linker, Input, additional references. Et là, le linker est content, il sait où se trouve PostQuitMessage etc... et tu as un joli exe.

    Mais c'est pas fini... ton exe est maintenant lié à des dll. Il a besoin des ces dll pour fonctionner. Mais comme ici ce sont des dll systèmes, tu es garanti qu'elles sont toujours présentes, et donc l'exe devrait tourner... sauf si tu en utilise une autre non système, je pense à la crt (lib C/C++).
    Utilise dependency walker pour avoir la liste de ce qu'utilise ton exe.



    Et enfin éxiste-t-il un éditeur de fenêtre (en API les fenêtres ^^) qui génere un code source ou un fichier ressource à inclure lors de la programmation proprement dite ou es-ce que je dois tout taper à la main ?
    En Win32, faut tout taper à la main. C'est là que les bibliothèques C++ deviennent intéressantes, couplées à des IDE. Chez VC++, c'est les MFC, mais y'a pas ça dans la version Express.

  14. #14
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    Ok merci pour ces expliquations.

    Pour l'éditeur de fenêtre j'ai commencer à regarder Qt 4 mais il n'a pas l'air très compatible avec VC++ en GPL et si jamais je réussi à faire une application interessante, les conditions de la license GPL n'ont pas l'air génial mais bon si j'arrive à le faire tourner, sa me fera la main ^^.

    Encore merci.

  15. #15
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Tu as un bouton "résolu" plutôt que d'éditer le titre du message

  16. #16
    Membre averti Avatar de dorian833
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 223
    Points : 356
    Points
    356
    Par défaut
    Oups pas vu le petit bouton

  17. #17
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Citation Envoyé par Aurelien.Regat-Barrel
    Et enfin éxiste-t-il un éditeur de fenêtre (en API les fenêtres ^^) qui génere un code source ou un fichier ressource à inclure lors de la programmation proprement dite ou es-ce que je dois tout taper à la main ?
    En Win32, faut tout taper à la main. C'est là que les bibliothèques C++ deviennent intéressantes, couplées à des IDE. Chez VC++, c'est les MFC, mais y'a pas ça dans la version Express.
    C'est inexact: Pour les fenêtres elles-mêmes, il n'y a rien, mais pour les Boites de dialogue (avec ou sans MFC) il y a un éditeur de ressources intégré à VC++ (Ils semblent appeller ça ApStudio) qui permet de dessiner une boite de dialogue et de générer le fichier de ressources concerné ainsi que le fichier d'en-tête resource.h...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/04/2010, 23h44
  2. (Débutant API) Utilisation de Richedit avec les APIs
    Par LibrairieSI dans le forum Windows
    Réponses: 2
    Dernier message: 10/08/2005, 16h53
  3. Interfaçage avec les API de cdrtools
    Par jeanbi dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 17/07/2004, 16h35

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