2010-07-15 8 views
0

J'ai une application d'exploration WPF Full Tust qui utilise un assemblage COM.WPF, chargement d'une DLL COM dans certaines machines client

Sur certains ordinateurs, cela fonctionne très bien, dans d'autres, il échoue. Il y a des exceptions ok gentilles que j'ai eues: ComException et FileNotFoundException. Dans le premier cas le dll arrive au clinet mais le générateur COm n'est pas trouvé (quel est le générateur Com? Dois-je l'ajouter au projet ???), dans le second cas de dll ne va jamais au client.

C'est un assemblage pour créer et modifier des PDF. PdfToolkit

J'ai essayé d'enregistrer le dll progamatically. Il enregistre avec succès dans le client, mais ne peut pas être chargé.

Un peu d'aide, s'il vous plaît ???? Ai-je besoin de faire quelque chose pour utiliser l'assemblage COM dans mon appplication WPF ???

+0

Désolé. J'ai oublié: les exceptions se produisent lorsqu'une instance d'un type existe dans le composant. Juste goin "new PDFDocument" dans le Page_Loaded. Merci d'avance. – Gustavo

Répondre

1

Il est possible que vous compiliez pour "Any CPU", puis exécutez votre application sur une version x64 de Windows. Lorsque vous exécutez votre application sur x64 et qu'elle essaie de charger le COM, elle ne le trouve pas car Windows recherche une version 64 bits du COM. Essayez de compiler votre exécutable principal en tant que "x86" au lieu de "Any CPU" et cela devrait fonctionner sur x64 ou x86 (si tel est le problème).

+0

Je cours dans ce lot lors du développement de petits utilitaires uniques qui utilisent mes serveurs COM. +1 –