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

Framework .NET Discussion :

Erreur sur un poste mais pas sur un autre


Sujet :

Framework .NET

  1. #1
    Membre averti
    Inscrit en
    Août 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 19
    Par défaut Erreur sur un poste mais pas sur un autre
    Bonjour à tous,

    Je viens vous voir car j'ai un probleme au sujet d'une application que j'ai developpé en VS C# express 2005, qui fonctionne très bien sur ma machine et qui plante sur une autre avec le message d'erreur suivant :

    NomApplication a rencontré un problème et doit être fermé. Nous vous prions de nous excusez pour le désagrément encouru.

    Le Framework 2.0 a bien été installé sur le PC, et les specs du systeme sont les suivantes :

    XP Pro version 2002 SP2

    Pouvez vous m'aider a comprendre le probleme, je ne vois pas du tout d'où viens l'erreur alors que sur un autre poste l'application fonctionne ?

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Vérifie que les assembly dont ton programme dépend sont disponibles sur la machine (bin, GAC, etc)
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  3. #3
    Membre averti
    Inscrit en
    Août 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 19
    Par défaut
    Salut,

    merci pour ta réponse rapide, mais comment puis-je verifier ca ?

  4. #4
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    298
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 298
    Par défaut
    Salut,

    Si j'ai bonne souvenance, ce répertoire ci contient toutes les assembly enregistrées sur le PC:
    C:\Windows\assembly

    Hope this help

  5. #5
    Membre confirmé

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2004
    Messages : 126
    Par défaut
    Bonjour !

    J'ai exactement le même problème. J'ai développé une toute petite application en C#, vraiment rien d'exceptionnel. En gros ça crée un fichier texte servant de playlist. Bref je n'utilise je pense rien de vraiment particulier dans mon code. Toujours est-il que tout fonctionne très bien chez moi (en version debug comme en release) mais lorsque je l'essaye sur un autre PC j'ai le même message d'erreur : Generateur de Playlist.exe a rencontré un problème et doit fermer... etc...etc...

    J'ai installé le Framework 2.0 sur la machine mais rien à faire. Je vais tenter de copier les assembly de mon pc sur l'autre. Je vous tiens au courant dès que c'est fait. En attendant si quelqu'un d'autre à une idée, je suis preneur!

  6. #6
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Par défaut
    Salut,

    oui effectivement, le .NET Framework est le minimum.
    Comment fais-tu pour déployer ton application ? Tu utilises ClickOnce ? Un fichier MSI ? Ou tu déplaces l'exe manuellement ?
    Utilises-tu des dll ? des objets COM ?

    Bye

  7. #7
    Membre confirmé

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2004
    Messages : 126
    Par défaut
    Je déplace juste l'exe...
    L'application se présente de la façon suivante :



    Je n'ai utilisé que des fonctions basiques (je pense). Je développe sous VS2003.

  8. #8
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Par défaut
    Salut,

    as-tu essayé de logger l'exception ?
    et fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
    CurrentDomain_UnhandledException est ta méthode déléguée

    Bye

  9. #9
    Membre confirmé

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2004
    Messages : 126
    Par défaut
    Désolé je débute en prog... Qu'entends-tu par là? Dois-je ajouter du code quelque part. Je ne crois pas avoir gérer quoi que ce soit de ce genre...

  10. #10
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Par défaut
    Bonjour,

    1. Les exceptions non gérés
    Actuellement, lorsque ton application plante, la fenêtre classique des applications windows qui plantent apparaît.
    Dans la classe de ta form, ajoutes la méthode:

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
            {
                MessageBox.Show(e.ExceptionObject.ToString() + e.ToString());
            }

    Dans le constructeur de ta form, ajoutes la ligne:
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);

    Désormais lorsque ton application plantera, une fenêtre apparaîtra t'indiquant la pile d'exécution et tu pourras voir ce qui fait planter ton application.

    2. Log
    Tu peux mettre en place un système de log pour tracer le déroulement de ton application et ainsi essayer de comprendre ce qui la fait planter.
    Tu peux par exemple écrire différentes informations dans un fichier texte, ou les afficher dans le système d'evenements de Windows, ou les afficher dans la console avec la commande
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    Console.WriteLine("tonMessage")
    Pour afficher la console alors que ton application est une Windows Forms, tu édites les propriétés de ton application, tu vas dans Application, et pour type de sortie tu choisis Application console.
    Pour toute application, il faut tracer un minimum le déroulement de l'application, ainsi en cas de problème tu peux retrouver ce qui s'est passé.
    Tu peux aussi pour logger des informations utiliser le namespace System.Diagnostics. Regarde sur ce site, il y a des cours sur le sujet.

    Pour en revenir à ton problème, les logs ne te donneront pas forcément grand chose car comme le dis SaumonAgile, il y a des chances que ton problème soit liés à un problème de référencement, c'est à dire que sur le poste où tu exécutes ton application, cette dernière essaie de charger une assembly ou une dll qu'elle ne trouve pas sur ce poste.
    Utilises la première solution et mets si possible le résultat en réponse à ce post qu'on puisse voir ce qu'il en est.

    Bye

  11. #11
    Membre confirmé

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2004
    Messages : 126
    Par défaut
    Ok. J'essaie tout ça le plus tôt possible et je posterai le résultat sans faute.

    Merci pour tout ces conseils!!!

Discussions similaires

  1. Macros qui fonctionnemnt sur un poste mais pas sur un autre
    Par PYDou dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 18/02/2015, 11h43
  2. [XL-2007] Macro fonctionne sur mon poste mais pas chez les autres
    Par Rosees dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/10/2013, 17h01
  3. [XL-2007] Macro qui fonctionne sur un poste mais pas sur un autre
    Par Runsh63 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/06/2012, 10h24
  4. Réponses: 0
    Dernier message: 24/06/2010, 15h10
  5. Code qui marche sur un poste mais pas sur un autre
    Par TOSCAN dans le forum Langage
    Réponses: 5
    Dernier message: 11/06/2008, 21h09

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