2009-01-26 17 views
1

J'ai écrit une application qui boucle un ensemble d'enregistrements et imprime deux choses.Com Object Exception

Un est un rapport de SSRS qui fonctionne correctement.

L'autre est un dessin qui utilise un objet COM à imprimer. L'objet COM échoue de manière aléatoire et provoque la fermeture du programme.

Y at-il un moyen de l'empêcher de tuer le programme entier lorsque l'objet COM échoue? J'ai essayé d'attraper toutes les exceptions à tous les niveaux et ça ne marche toujours pas.

Répondre

1

Avez-vous le code d'objet COM que vous appelez. Si vous avez du code, vérifiez s'il existe une commande de sortie en cas d'échec.

+0

Je n'ai pas le code seulement la documentation et il ne mentionne aucune commande de sortie listée. – Travis

+0

Est-ce COM dll ou exe? – Vinay

+0

Si c'est un exe alors je pense, il ne devrait pas sortir en cas d'échec. Cela arrive seulement si c'est un dll – Vinay

0

Utilisez-vous l'objet COM à partir de plusieurs threads? Vous devez uniquement accéder à l'objet COM à partir d'un seul thread avec une pompe de message. Dans mon expérience, cela peut causer une instabilité étrange qui ne peut pas être piégée par un essai.

+0

Ceci s'applique uniquement s'il s'agit d'un objet STA (single-threaded apartment). –

0

Il semble que le problème peut-être avec l'objet com lui-même et pas votre code. Si tel est le cas, si l'objet com ne renvoie pas d'erreur, vous ne pourrez pas en attraper un.

Cordialement

Tony Smith-Brewster