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

GTK+ avec C & C++ Discussion :

Problème de DLL


Sujet :

GTK+ avec C & C++

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut Problème de DLL
    Bonjour,

    Pour apprendre à maitriser les bases de GTK+ je me suis donné pour objectif la création d'un éditeur de texte très basic.

    J'ai donc un bouton qui ouvre est censé ouvrir une boite de dialogue 'Parcourir' pour que l'utilisateur choisisse un fichier.

    Jusque là le code n'est pas compliqué. Le programme compile bien (j'utilise Code Block). Seulement à l'exécution j'ai cette erreur :

    Le point d'entrée de procédure gtk_file_chooser_get_filename_utf8 est introuvable dans la bibliothèque de liaisons dynamiques libgtk-win32-2.0-0.dll
    Pourtant, mon répertoire system32 contient bien la DLL en question ainsi que le répertoire d'installation de GTK+ (C:\Program Files\Fichiers communs\GTK\2.0\bin).

    J'ai testé deux versions de la DLL mais sans succès. Sur un site j'ai trouvé que c'était parceque la fonction gtk_file_chooser_get_filename_utf8 n'existe pas et qu'il s'agit de gtk_file_chooser_get_filename (ce qui serait étrange du fait que le programme compile sans même un warning), mais à tout hasard quand je change directement dans le .h il ne compile carrément plus.

    Voilà, si quelqun pourrait me livrer la solution ça ne serait pas de refus

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Salut et bienvenue sur les forums de developpez.com


    En fait, cela n'a rien à voir avec tes DLL (du moins pas directement) étant donné que cette fonction n'existe pas, c'est soit gtk_file_chooser_get_filename ou gtk_file_chooser_get_filenames (si tu as plusieurs fichiers de sélectionnés)
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    Justement c'est bien ça le problème

    Voilà mon code que j'ai pris en suivant le tuto :

    gchar *file_name = NULL;
    file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (pDialog));
    open_file (file_name, GTK_TEXT_VIEW (pData));
    g_free (file_name), file_name = NULL;
    Je n'utilise pas la fonction fatidique ! Après quelques recherches, j'ai trouvé que dans gtkfilechooser.h il y a une macro qui convertit gtk_file_chooser_get_filename en gtk_file_chooser_get_filename_utf8.

    Quand j'enlève la macro, le script ne compile plus du tout en me sortant une erreur 'Undefined reference to gtk_file_chooser_get_filename(...)"

    Je suppose qu'il faudrait changer aussi le corps de la fonction mais celui ci est pré-compilé dans une DLL non ?

  4. #4
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Puis-je avoir un code complet réduit au minimum cernant ton problème mais compilable ? Normalement avec soit la macro ou la fonction, cela devrait fonctionner mais utiliser juste la fonction suffit car la macro n'est rien d'autre qu'un simple define sur la fonction rien de plus ! De plus la macro devrais normalement être créée, surtout si tu es sous Windows
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  5. #5
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Tu as quelle version de GTK+ d'installée sur ton Windows ? Moi je viens de tester avec un exemple et bien pas de problèmes, même en utilisant la macro gtk_file_chooser_get_filename_utf8 !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    Bon, j'ai désinstallé Code Block, viré tous les runtime win32 et les librairies que j'avais installé.

    J'ai donc suivi ce tuto à la lettre :

    J'ai dézippé tous les fichiers à la racine de Code Blocks installé dans C:\Program Files\CodeBlocks.

    Ensuite je suis allé ici : http://nicolasj.developpez.com/blog/...s_template.zip et j'ai dézippé le contenu dans le répertoire template de C::B.

    Après quoi je suis allé ici : ftp://ftp.gtk.org/pub/gtk/v2.8/win32 j'ai retéléchargé tous les fichiers énoncés précédemment dans le tuto, mais cette fois ceux ne contenant pas 'dev' dansle nom de fichier, ainsi que les archives contenues dans le répertoire "dépendencies".

    Maintenant j'ai l'erreur :
    Le point d'entrée de procédure g_intern_static_string est introuvable dans la bibliothèque de liaisons dynamique libglib-2.0-0.dll
    Dans le doute j'ai copier la DLL libglib-2.0-0.dll (celle contenu dans le répertoire bin de C::B, celle qui fait 671 ko) dans le repertoire SYSTEM32 de windows.

    Please, je commence à craquer ça fait 2 semaines que je galère avec GTK, d'abord sous linux puis avec dev cpp puis maintenant avec code blocks

  7. #7
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par jbeaussier
    mais cette fois ceux ne contenant pas 'dev' dansle nom de fichier
    Mauvais plan, les fichiers ne contenant pas -dev ne sont autres que les fichiers runtime ! Voici la procédure à suivre (d'après celle de gege que tu as vu mais avec quelques modifs, il t'est conseillé de tout suivre à la lettre, chez moi ca marche nikel !

    http://www.developpez.net/forums/sho...15&postcount=4

    Juste un conseil, vu que tu as un peu cradossé ton install, vire tout puis suit ce que j'ai écrit
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  8. #8
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    Le lien de téléchargement de l'installeur de runtime ne marche pas chez moi (pfff j'ai la poisse ). Quand je suis sur la page de sourceforge je n'ai qu'un seul mirroir UK et le téléchargement ne démarre pas sur ce mirroir

  9. #9
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par jbeaussier
    Le lien de téléchargement de l'installeur de runtime ne marche pas chez moi (pfff j'ai la poisse ). Quand je suis sur la page de sourceforge je n'ai qu'un seul mirroir UK et le téléchargement ne démarre pas sur ce mirroir
    Essaye ce lien, y'a une ouvelle version: http://kent.dl.sourceforge.net/sourc...20-win32-1.exe il faut attendre un peu avant que le téléchargement se lance mais ca marche, je viens de le télécharger
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  10. #10
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    Alors alors...

    J'ai désinstallé Code Blocks, j'ai désinstallé GTK+, j'ai vérifié au passage que je n'avais rien dans system32 de rajouté par moi même.

    - J'installe donc Code Blocks
    - Je télécharge les fichier dans le répertoire de la version 2.8 (en utilisant les liens de téléchargement du tuto d'installation).
    - Je télécharge les fichiers a copier dans le répertoire template.
    - Je télécharge (apfiou, galère lui ^^ ) gtk-2.8.20-win32-1.exe, l'installeur de runtime GTK pour Windows.
    - Je change une ligne dans le fichier .cbg ( ou je sais plus quoi ) et j'en rajoute une autre juste en dessous comme précisé dansla page que tu m'a montré.

    Je lance Code Blocks, je choisi GCC, je choisi de ne plus avoir les tooltip ^^.
    Mon projet se lance tout seul.

    Je compile => OK
    Je RUN =>KO !!
    g_type_register_static_simple est introuvable dans la bibliothèque de liaisons dynamique libgobject-2.0-0.dll
    Je fais une recherche sur tous mes disques dur pour vérifier si je n'ai pas une version parasite de la DLL en question et je trouve uniquement libgobject-2.0-0.dll dans le répertoire C:\GTK\bin et le fichier libgobject-2.0-0.dll.a dans le répertoire C:\Program Files\CodeBlocks\lib

    Sur ce, je vais me faire un thé car j'ai de la fumée dans les oreilles

    Merci pour votre réactivité en tout cas

  11. #11
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par jbeaussier
    g_type_register_static_simple est introuvable dans la bibliothèque de liaisons dynamique libgobject-2.0-0.dll
    Alors là Normalement si tu as suivi tout ce que j'ai marqué cela devrait fonctionner, chez moi ca roule et sans problème en plus de ca ! Là franchement ce message je vois pas trop ...

    Je viens même de désinstaller l'ancienne version de mes runtimes pour installer celle dont je t'ai donné l'url et aucun souci !

    Moi pour les headers et lib j'ai pris ces versions:
    • atk-dev-1.9.0.zip
    • cairo-dev-1.2.4.zip
    • glib-dev-2.8.6.zip
    • gtk+-dev-2.8.20.zip
    • pango-dev-1.10.3.zip
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  12. #12
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    A tout hasard, voici l'intégralité de mon code source :

    main.c

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    #include <stdlib.h>
    #include <gtk/gtk.h>
    #include "event_menu.h"
     
    int main(int argc, char **argv)
    {
     
        /* Déclaration des composants de la fenêtre */
        GtkWidget *pWindow;
        GtkWidget *pMenuBar;
        GtkWidget *pMenuFiles;
        GtkWidget *pMenuItem;
        GtkWidget *pMenuBox;
        GtkWidget *pToolBarBox;
        GtkWidget *pToolBarButton;
        GtkWidget *pWorkBox;
        GtkWidget *pLinesNumberBox;
        GtkWidget *pLinesNumberEmptyLabel;
        GtkWidget *pWorkBowTextArea;
     
        /* Initialisation de GTK+ */
        gtk_init(&argc, &argv);
     
        /* Création de la fenêtre en mode barre d'options */
        pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        gtk_window_set_title(GTK_WINDOW(pWindow) , "Webpad - Version alpha");
        gtk_window_set_default_size(GTK_WINDOW(pWindow) , 1024 , 750);
        gtk_window_set_position(GTK_WINDOW(pWindow) , GTK_WIN_POS_CENTER);
     
        /* Initiaisation de la barre de menu */
        pMenuBox = gtk_vbox_new(FALSE, 0);
        gtk_container_add(GTK_CONTAINER(pWindow), pMenuBox);
     
        pMenuBar = gtk_menu_bar_new();
        pMenuFiles = gtk_menu_new();
     
        pMenuItem = gtk_menu_item_new_with_label("New...");
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuFiles), pMenuItem);
     
        pMenuItem = gtk_menu_item_new_with_label("Open...");
        g_signal_connect(G_OBJECT(pMenuItem), "clicked", G_CALLBACK(OnOpenFile), (gpointer)pWorkBowTextArea);
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuFiles), pMenuItem);
     
        pMenuItem = gtk_menu_item_new_with_label("Save");
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuFiles), pMenuItem);
     
        pMenuItem = gtk_menu_item_new_with_label("Save as...");
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuFiles), pMenuItem);
     
        pMenuItem = gtk_menu_item_new_with_label("Close");
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuFiles), pMenuItem);
     
        pMenuItem = gtk_menu_item_new_with_label("Quit");
        g_signal_connect(G_OBJECT(pMenuItem), "activate", G_CALLBACK(OnQuitter), (GtkWidget*) pWindow);
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuFiles), pMenuItem);
     
        pMenuItem = gtk_menu_item_new_with_label("Files");
        gtk_menu_item_set_submenu(GTK_MENU_ITEM(pMenuItem), pMenuFiles);
        gtk_menu_shell_append(GTK_MENU_SHELL(pMenuBar), pMenuItem);
     
        gtk_box_pack_start(GTK_BOX(pMenuBox), pMenuBar, FALSE, FALSE, 0);
        /* Fin de l'initialisation du menu */
     
        /* Initialisation de la toolbar */
        pToolBarBox = gtk_hbox_new(FALSE,2);
     
        pToolBarButton = gtk_button_new_from_stock(GTK_STOCK_NEW);
        gtk_box_pack_start(GTK_BOX(pToolBarBox), pToolBarButton, FALSE, FALSE, 0);
     
        pToolBarButton = gtk_button_new_from_stock(GTK_STOCK_SAVE);
        gtk_box_pack_start(GTK_BOX(pToolBarBox), pToolBarButton, FALSE, FALSE, 0);
     
        pToolBarButton = gtk_button_new_from_stock(GTK_STOCK_OPEN);
        g_signal_connect(G_OBJECT(pToolBarButton), "clicked", G_CALLBACK(OnOpenFile), (gpointer)pWorkBowTextArea);
        gtk_box_pack_start(GTK_BOX(pToolBarBox), pToolBarButton, FALSE, FALSE, 0);
     
     
        gtk_box_pack_start(GTK_BOX(pMenuBox), pToolBarBox, FALSE, FALSE, 0);
        /* Fin de l'initialisation de la toolbar */
     
        /* Initialisation de la workbox */
        pWorkBox = gtk_hbox_new(FALSE , 25);
        pLinesNumberBox = gtk_vbox_new(TRUE , 0);
     
        pLinesNumberEmptyLabel = gtk_label_new("23");
        gtk_box_pack_start(GTK_BOX(pWorkBox), pLinesNumberEmptyLabel, FALSE, FALSE, 0);
     
        pWorkBowTextArea = gtk_text_view_new();
        gtk_box_pack_start(GTK_BOX(pWorkBox), pWorkBowTextArea, TRUE, TRUE, 0);
     
        gtk_box_pack_start(GTK_BOX(pMenuBox), pWorkBox, TRUE, TRUE, 10);
        /* Fin de l'initialisation de la workbox */
     
        g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(OnDestroy), NULL);
        gtk_widget_show_all(pWindow);
        gtk_main();
     
        return EXIT_SUCCESS;
    }
    event_menu.h

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #ifndef EVENT_MENU_H
    #define EVENT_MENU_H
     
    void OnQuitter(GtkWidget* widget, gpointer data);
    void OnDestroy(GtkWidget *pWidget, gpointer pData);
    void OnOpenFile(GtkWidget *pWidget, gpointer pData);
    void open_file (const gchar *file_name, GtkTextView *p_text_view);
     
    #endif
    event_menu.c

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    #include <stdlib.h>
    #include <stdio.h>
    #include <gtk/gtk.h>
    #include "event_menu.h"
     
    void OnDestroy(GtkWidget *pWidget, gpointer pData)
    {
        /* Arret de la boucle evenementielle */
        gtk_main_quit();
    }
     
    void OnQuitter(GtkWidget* widget, gpointer data)
    {
        GtkWidget *pQuestion;
     
        pQuestion = gtk_message_dialog_new(GTK_WINDOW(data),
            GTK_DIALOG_MODAL,
            GTK_MESSAGE_QUESTION,
            GTK_BUTTONS_YES_NO,
            "Are you sure?");
     
        switch(gtk_dialog_run(GTK_DIALOG(pQuestion)))
        {
            case GTK_RESPONSE_YES:gtk_main_quit();break;
     
            case GTK_RESPONSE_NONE:
            case GTK_RESPONSE_NO:gtk_widget_destroy(pQuestion);
            break;
        }
    }
     
    void OnOpenFile (GtkWidget *pWidget, gpointer pData){
     
        GtkWidget *pDialog = NULL;
        pDialog = gtk_file_chooser_dialog_new ("Ouvrir un fichier", NULL,
                                              GTK_FILE_CHOOSER_ACTION_OPEN,
                                              GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
                                              GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
                                              NULL);
     
        if (gtk_dialog_run (GTK_DIALOG (pDialog)) == GTK_RESPONSE_ACCEPT){
     
            gchar *file_name = NULL;
            file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (pDialog));
            open_file (file_name, GTK_TEXT_VIEW (pData));
            g_free (file_name), file_name = NULL;
     
      }
     
      gtk_widget_destroy (pDialog);
     
      (void)pWidget;
    }
     
    void open_file (const gchar *file_name, GtkTextView *p_text_view)
    {
      g_return_if_fail (file_name && p_text_view);
      {
        gchar *contents = NULL;
     
        if (g_file_get_contents (file_name, &contents, NULL, NULL))
        {
          /* Copie de contents dans le GtkTextView */
          gchar *utf8 = NULL;
          GtkTextIter iter;
          GtkTextBuffer *p_text_buffer = NULL;
     
          p_text_buffer = gtk_text_view_get_buffer (p_text_view);
          gtk_text_buffer_get_iter_at_line (p_text_buffer, &iter, 0);
          utf8 = g_locale_to_utf8 (contents, -1, NULL, NULL, NULL);
          g_free (contents), contents = NULL;
          gtk_text_buffer_insert (p_text_buffer, &iter, utf8, -1);
          g_free (utf8), utf8 = NULL;
        }
        else
        {
        	printf ("Impossible d'ouvrir le fichier %s\n", file_name);
        }
      }
    }

  13. #13
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Bin apparement ton code semble assez correct dans l'ensemble, juste un petit warning à vérifier (et surtout trouver dans ton code) lors de l'exécution:
    (GTKapp.exe:4000): GLib-GObject-WARNING **: gsignal.c:1667: signal `clicked' is invalid for instance `00D68060'
    Mais sinon c'est tout !


    Voici la ligne fautive:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    g_signal_connect(G_OBJECT(pMenuItem), "clicked", G_CALLBACK(OnOpenFile), (gpointer)pWorkBowTextArea);
    il faut mettre activate au lieu de clicked vu que c'est un menu
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  14. #14
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Quelle est la version du fichier de ta DLL (clic droit -> propriétés -> version) ? J'en ai une autre un peu plus récente qui est livrée avec Inkscape, si ca peut aider mais sinon je vois franchement pas
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  15. #15
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    J'ai la version 2.10.3.0

    J'ai testé à tout hasard de la copier dansle system32 ça n'a rien changé.

  16. #16
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par jbeaussier
    J'ai testé à tout hasard de la copier dansle system32 ça n'a rien changé.
    Oui ca c'est normal vu que dans la variable PATH du système bin c'est le répertoire bin du dossier d'installation qui est mis et non pas system32
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  17. #17
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    C'est bien ce que je pensais oui.

    Je dois m'être fait marabouté mon ordinateur ^^ j'ai rarement eu une posse pareil.

  18. #18
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Franchement, tu as les même runtimes que moi, tu as le même EDI, si tu as installé les mêmes versions des headers et lib comme cité ici: http://www.developpez.net/forums/sho...6&postcount=11, je ne vois pas quoi faire d'autre, c'est exactement ce que j'ai, ni plus, ni moins !

    Là je dois l'avouer ... je suis totalement dépassé, y'a aucune raison que ca ne fonctionne pas, surtout si tu as tout suivi à la lettre par rapport à ce que j'ai marqué dans le lien d'un de mes posts !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  19. #19
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Par défaut
    * atk-dev-1.9.0.zip
    * cairo-dev-1.2.4.zip
    * glib-dev-2.8.6.zip
    * gtk+-dev-2.8.20.zip
    * pango-dev-1.10.3.zip
    Je confirme avoir pris ceux là.


  20. #20
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Ouais bin là je vois pas quoi faire d'autre vu qu'on a la même installation à priori !
    Peut-être que d'ici demain lorsqu'il y aura plus de monde quelqu'un verra ton post et connais la réponse mais moi là ...
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Problème utilisation DLL
    Par Tub-95 dans le forum MFC
    Réponses: 4
    Dernier message: 02/11/2005, 12h00
  2. conteneur de la STL (problème avec DLL et COM)
    Par moldavi dans le forum MFC
    Réponses: 8
    Dernier message: 25/07/2005, 22h43
  3. Problème de dll à l'execution
    Par gege2061 dans le forum Windows
    Réponses: 3
    Dernier message: 11/03/2005, 11h22
  4. problème execution dll
    Par semenzato dans le forum MFC
    Réponses: 15
    Dernier message: 19/12/2003, 16h40
  5. Problème de DLL.
    Par Lunedor dans le forum C++Builder
    Réponses: 2
    Dernier message: 29/11/2003, 10h17

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