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

C Discussion :

problème avec Libxml2


Sujet :

C

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Points : 31
    Points
    31
    Par défaut problème avec Libxml2
    Bonjour,

    Pour mon stage, j'ai besoin de récupérer des données d'un document xml, après quelques recherches sur internet, je me suis penchée sur libxml2.

    Pour commencer je me suis attardée sur leur tutorial et leur fonction getReference. Pour regarder ce qu'elle faisait, j'ai copier/coller le code sous visual studio.NET 2003.

    Plusieurs probleme ce sont posés :
    le premier est une erreur :

    error C2664: 'xmlGetProp'*: impossible de convertir le paramètre 2 de 'const char [4]' en 'const xmlChar *'

    mais quand j'essaye de voir le prototype de cette fonction, on me dit que la fonction n'est pas définie...
    D'ailleurs si j'enlève ce problème, j'ai le droit a pas mal d'erreurs de lien concernant toutes les fonction issue de libxml2

    testlibkml error LNK2001: symbole externe non résolu __imp__xmlFree
    testlibkml error LNK2019: symbole externe non résolu _xmlDocGetRootElement référencé dans la fonction "void __cdecl parseDoc(char *)" (?parseDoc@@YAXPAD@Z)


    Voici le code copié dans visual :

    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
     
    #include "stdafx.h"
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <libxml/xmlmemory.h>
    #include <libxml/parser.h>
     
    void
    getReference (xmlDocPtr doc, xmlNodePtr cur) {
     
    	xmlChar *uri;
    	cur = cur->xmlChildrenNode;
    	while (cur != NULL) {
    	    if ((!xmlStrcmp(cur->name, (const xmlChar *)"reference"))) {
    		    uri = xmlGetProp(cur, "uri");
    		    printf("uri: %s\n", uri);
    		    xmlFree(uri);
    	    }
    	    cur = cur->next;
    	}
    	return;
    }
     
     
    void
    parseDoc(char *docname) {
     
    	xmlDocPtr doc;
    	xmlNodePtr cur;
     
    	doc = xmlParseFile(docname);
     
    	if (doc == NULL ) {
    		fprintf(stderr,"Document not parsed successfully. \n");
    		return;
    	}
     
    	cur = xmlDocGetRootElement(doc);
     
    	if (cur == NULL) {
    		fprintf(stderr,"empty document\n");
    		xmlFreeDoc(doc);
    		return;
    	}
     
    	if (xmlStrcmp(cur->name, (const xmlChar *) "story")) {
    		fprintf(stderr,"document of the wrong type, root node != story");
    		xmlFreeDoc(doc);
    		return;
    	}
     
    	getReference (doc, cur);
    	xmlFreeDoc(doc);
    	return;
    }
     
    int
    main(int argc, char **argv) {
     
    	char *docname;
     
    	if (argc <= 1) {
    		printf("Usage: %s docname\n", argv[0]);
    		return(0);
    	}
     
    	docname = argv[1];
    	parseDoc (docname);
     
    	return (1);
    }
    Donc voilà si quelqu'un a des idées pour que je puisse régler ce problème...
    Merci d'avance!

  2. #2
    Nouveau membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2009
    Messages : 31
    Points : 31
    Points
    31
    Par défaut
    Bon après avoir trouvé quelques brides de réponses sur le net, il s'agirait d'un .lib que je n'aurait pas inclu, et en fait... je vois pas comment j'aurais pu l'inclure vu que je l'avais pas...

    Si certaines personnes savent comment l'obtenir, car dans les sources que j'ai telecharger sur http://xmlsoft.org il n'y en a pas. Je ne sais pas si il faut le générer ou non... et si oui... je n'ai aucune idée de comment faire...

Discussions similaires

  1. Problème avec libxml2
    Par nicolas66 dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 08/07/2006, 19h44
  2. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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