2010-12-07 17 views
0

Certains d'entre vous ont déjà lu et répondu à mes questions à ce sujet. Eh bien, j'ai eu un semestre scolaire occupé et je reviens donc à ce problème maintenant. Je suis fortement d'avis de réécrire l'application dont j'ai parlé auparavant, en utilisant éventuellement quelque chose comme Java. Cependant, j'aimerais essayer d'attraper une exception non gérée au début de mon programme. Cependant, ma connaissance limitée de C# me fait douter de la façon de le faire. Donc, voici le problème, comme je l'ai déjà dit: J'ai programmé cette application en utilisant Visual Studio 2010 sur Windows 7. L'application était destinée à Windows XP SP2, cependant. Lorsque j'essaie d'exécuter l'application sur la machine XP, elle fournit la fenêtre d'envoi du rapport d'erreur. Le programme se bloque avant même qu'il ne puisse fonctionner. J'ai donc exécuté le seul débogueur disponible sur la machine (qui faisait partie de Visual C++) et il a mentionné quelque chose à propos d'une exception non gérée. Donc, je voudrais utiliser une instruction try catch pour comprendre quelle exception non gérée pourrait être levée (ce qui signifie que je devrais inclure la méthode principale dans un try-catch et si une exception est levée, imprimez la commande ligne un message)Visual C# - Vérification de l'exception en cours d'exécution

Mon problème est ... où dans mon code dois-je mettre cela?

Mon code est assez long, donc je ne pouvais pas le poster ici. Je suis lié à ici: http://www.raw-d.com/code.cs

+0

Vous devriez probablement utiliser la fonction « Mise au point » de VS2010 pour le faire. Je peux vous promettre que ce sera beaucoup plus facile que de voir ce qu'est l'erreur. En haut de votre écran VS, vous pouvez voir la petite flèche verte. À côté de lui est une boîte qui dit "Debug" ou "Release". Réglez-le sur "Déboguer". Ensuite, répartissez les points de rupture en commençant par un dans votre fonction Main() au tout début et suivez les instructions jusqu'à ce que le code affiche une exception. – Crisfole

+1

Consultez cette question pour savoir comment configurer 'UnhandledExceptionEventHandler'. Ensuite, utilisez le gestionnaire pour consigner toutes les informations sur l'exception. http://stackoverflow.com/questions/3344100/c-app-runs-in-windows-7-but-not-in-windows-xp – unholysampler

+0

Il est possible que vous compiliez avec un environnement d'exécution .NET qui n'est pas installé sur la machine cible. – Oded

Répondre

0

1) vous pouvez mettre votre exception de capture d'essai dans le Main()

2) vous pouvez gérer l'événement AppDomain.UnhandledExpception

3) Certaines fonctions de .Net 4 ne sont pas disponibles sur Xp peut-être que vous en utilisez.

4) Ne changez pas de java

+0

pourquoi pas java ??? – muttley91

+0

Pourquoi voulez-vous passer à Java de toute façon? – Smur