2009-12-12 30 views
7

Tengo una aplicación WPF que hace referencia a una biblioteca de controles WPF. Cuando trato de poner en marcha (myWindow.Show()) una ventana que está dentro de la biblioteca de control, tengo la siguiente excepción:InvalidDeploymentException - La identidad de la aplicación no está configurada

InvalidDeploymentException
Identidad de la aplicación no se establece.

La extraña cosa es que estoy no hacer una aplicación ClickOnce, ¿por qué es quejan de esto?

Respuesta

17

Usted no ha dicho si esto era en el depurador de VS, pero ...

que estaba recibiendo éste hoy de código que establece ImageSource de un control para ser un BitmapImage (someURI). El código había funcionado perfectamente, y me quedé perplejo hasta que me di cuenta de que, por otras razones, simplemente le había dicho al depurador que no respetara las excepciones de CLR. Así que desactivé la subcategoría de excepción System.Deployment, y mi código una vez más se ejecutó perfectamente. Es un poco doloroso que MS use el sistema de excepción internamente para manejar casos que no debería preocuparme.

+0

Sí, creo que este fue el problema. Sin embargo, es desafortunado porque realmente ha ralentizado la aplicación, porque tendré varios cientos de estos mensajes (aparecen en la ventana de salida cuando se depura). – viggity

+0

Probablemente solo aparezcan cuando se depure. Por lo tanto, no ralentizarán la aplicación durante el uso normal. – CodingBarfield

2

¿La ventana definida en la biblioteca de control accede al espacio de nombres System.Deployment? ¿Tiene un rastro de pila que podríamos echarle un vistazo?

El MSDN documentation for InvalidDeploymentException indica que esta excepción indica que el sistema "no pudo leer la implementación o los manifiestos de la aplicación".

Algunos google indican que esta excepción podría surgir al acceder a la propiedad System.Deployment.Application.ApplicationDeployment.CurrentDeployment, y la aplicación no es una aplicación ClickOnce. Sospecho que para esta ventana que está usando, la biblioteca de controles está accediendo a esta propiedad o algo similar en el espacio de nombres System.Deployment.

Cuestiones relacionadas