8 votes

InvalidDeploymentException - L'identité de l'application n'est pas définie

J'ai une application WPF qui fait référence à une bibliothèque de contrôles WPF. Lorsque j'essaie de lancer (myWindow.Show()) une fenêtre qui se trouve dans la bibliothèque de contrôles, j'obtiens l'exception suivante :

InvalidDeploymentException
L'identité de l'application n'est pas définie.

Ce qui est bizarre, c'est que je suis pas qui fait une application ClickOnce, alors pourquoi se plaint-il à ce sujet ?

21voto

vanmelle Points 622

Vous n'avez pas précisé si c'était sous le débogueur VS, mais...

J'ai obtenu ce problème aujourd'hui à partir d'un code qui définissait la source d'image d'un contrôle comme étant une BitmapImage(someURI). Le code fonctionnait parfaitement, et j'étais perplexe jusqu'à ce que je réalise que j'avais, pour d'autres raisons, demandé au débogueur de s'arrêter sur les exceptions CLR. J'ai donc décoché la sous-catégorie d'exceptions System.Deployment, et mon code a de nouveau fonctionné parfaitement. C'est un peu pénible que MS utilise le système d'exception en interne pour gérer des cas dont je ne devrais pas avoir à me préoccuper.

2voto

Szymon Rozga Points 11277

La fenêtre définie dans la bibliothèque de contrôle accède-t-elle à l'espace de noms System.Deployment ? Avez-vous une trace de pile que nous pourrions examiner ?

Les Documentation MSDN pour InvalidDeploymentException précise que cette exception indique que le système "n'a pas pu lire les manifestes de déploiement ou d'application".

Quelques recherches sur Internet indiquent que cette exception peut être levée lors de l'accès à l'élément System.Deployment.Application.ApplicationDeployment.CurrentDeployment et l'application n'est pas une application ClickOnce. Je soupçonne que pour la fenêtre que vous utilisez, la bibliothèque de contrôles accède à cette propriété ou à quelque chose de similaire dans l'espace de noms System.Deployment.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X