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 :

Lecture de fichier XPS [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2011
    Messages : 56
    Par défaut Lecture de fichier XPS
    Bonjour à tous,

    Voilà j'ai un petit problème de lecture de document XPS dans une application C# WPF.

    J'ai un document word que je convertis en document xps. Jusque là ça fonctionne.

    Ensuite, j'essaye d'afficher le fichier xps dans un document viewer, mais il me sort une NullRefenceException.

    Voici ma méthode qui crée et affiche le document :

    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
     
    private void ConvertWordDocToXPSDoc()
    {
        // Create a WordApplication and add Document to it
        Microsoft.Office.Interop.Word.Application wordApplication = new Microsoft.Office.Interop.Word.Application();
        wordApplication.Documents.Add(@"C:\test.doc");
        Document doc = wordApplication.ActiveDocument;
     
        //Try to save the doc document as a xps document
        doc.SaveAs(xpsDocName, WdSaveFormat.wdFormatXPS);
        wordApplication.Quit();
     
        //Access the new xps doc
        XpsDocument xpsDoc = new XpsDocument(@"C:\test.xps",FileAccess.Read);
        //show the document on the screen
        documentViewer.Document =xpsDoc.GetFixedDocumentSequence();
    }
    L'exception est levée à la ligne 16.

    Ce qui est étrange c'est qu'il y a un peu moins d'un mois, cette méthode fonctionnait parfaitement...

    J'ai vérifié que mon code était correct sur plusieurs blogs et tutoriaux. Apparemment il l'est.

    Je suis un peu perdu et je ne sais voit pas trop de solution au problème. Quelqu'un aurait-il une idée ?

    Merci d'avance pour vos réponses et bonne journée à tous

  2. #2
    Membre Expert Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Par défaut
    J'en déduis que la création de ton XpsDocument ne fonctionne pas et qu'elle te renvoie NULL.

    Le fichier existe toujours bien à l'emplacement indiqué ? Est-il utilisé par un autre processus ? Est-il toujours accessible en lecture ?

    [EDIT] Elle ne renvoie pas NULL comme écrit plus haut, mais bien un objet non initialisé. Mal exprimé.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2011
    Messages : 56
    Par défaut
    Apparemment mon fichier .doc était altéré. Je ne sais pas comme cela a pu se produire mais bon, ça c'est réglé, j'en ai récréé un.

    Sinon pour le fichier xps, il est bien là où il doit être et je peux l'ouvrir avec XPS viewer.

    Je ne pense pas qu'il soit utilisé par un autre processus que celui de mon programme.

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Er3van Voir le message
    J'en déduis que la création de ton XpsDocument ne fonctionne pas et qu'elle te renvoie NULL.
    C'est impossible, l'instruction new ne renvoie JAMAIS null...

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2011
    Messages : 56
    Par défaut
    Effectivement, le document est bel et bien créé ( en tout cas pas d'erreur sur la ligne du new)

    L'exception est lancée depuis la ligne 16, donc lorsque je l'ajoute au document.

  6. #6
    Membre Expert Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Par défaut
    Citation Envoyé par tomlev Voir le message
    C'est impossible, l'instruction new ne renvoie JAMAIS null...
    Indeed, mais ton objet l'est, et c'est quand tu l'accède que tu as une NullReferencedException (ou quelque chose de se goût là)

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Er3van Voir le message
    Indeed, mais ton objet l'est, et c'est quand tu l'accède que tu as une NullReferencedException (ou quelque chose de se goût là)
    Déjà ce n'est pas "mon" objet mais celui de bebedemon

    Sinon, ça pourrait aussi être documentViewer qui est nul, mais ça semble peu probable. Mais à mon avis ça se passe plus "sous le capot", l'exception se produit probablement dans GetFixedDocumentSequence ; il faudrait voir la pile de l'exception

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2011
    Messages : 56
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Déjà ce n'est pas "mon" objet mais celui de bebedemon
    Oui c'est mon objet à moi na

    Citation Envoyé par tomlev Voir le message
    Sinon, ça pourrait aussi être documentViewer qui est nul, mais ça semble peu probable. Mais à mon avis ça se passe plus "sous le capot", l'exception se produit probablement dans GetFixedDocumentSequence ; il faudrait voir la pile de l'exception
    Désolé pour la question débile mais comment est-ce que je peux voir la pile ?

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

Discussions similaires

  1. [Windows]lecture des fichier lnk (raccourcis)
    Par Tiaps dans le forum API standards et tierces
    Réponses: 10
    Dernier message: 21/10/2009, 19h27
  2. [jsp]lecture de fichier
    Par antigone dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 04/09/2003, 11h05
  3. [AS400][Intranet][PC] Lecture de "fichiers" AS400
    Par lando dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 16/07/2003, 11h11
  4. Lecture de fichier
    Par Watcha dans le forum x86 16-bits
    Réponses: 13
    Dernier message: 04/03/2003, 20h43
  5. Lecture de fichiers ".WAV"...
    Par 0x4e84 dans le forum Langage
    Réponses: 2
    Dernier message: 03/09/2002, 09h43

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