Error al iniciar el paquete Window10 IoT

11

Tengo una aplicación sin cabeza desarrollada en C # para Raspberry Pi 2 B.

Puedo depurar bien la aplicación en Visual Studio. Tengo un cable Ethernet conectado directamente entre mi estación de trabajo y la placa. Cuando navego en mi navegador para: minwinpc:8080/AppXManager.htmPuedo ver el programa que quiero en la lista de aplicaciones instaladas. He intentado eliminarlo, reconstruir / volver a implementar en VS y la aplicación se va y vuelve de la lista; entonces sé que es la versión actual.

El problema es: no puedo hacer que "Inicio" desde la GUI web. Selecciono mi aplicación y luego aparece el siguiente error:

Failed to start package BlinkyHeadlessCS-uwp_q8jk9dv1tcdg!App

¿Cómo puedo configurar mi programa de parpadeo para que se inicie desde la interfaz de usuario web y luego, cómo puedo hacer que se ejecute automáticamente después de iniciar?

fifamaniac04
fuente
Debe ser una excepción lanzada al inicio de la aplicación. Desafortunadamente, MS es bien conocido por esto, especialmente en toda esta nueva tecnología que hicieron, redujeron el control de errores. Tal vez la depuración remota, no la depuración de compilación, pueda ayudar. Estoy configurando IoT ahora y voy a sufrir un poco. Si desea compartir su código, puedo intentar ayudarlo, tengo muchos años de experiencia con cosas de .NET. O intente acceder a un volcado de pila en alguna parte.
Piotr Kula
Para iniciar automáticamente la aplicación, debe usar powershell y establecer algunas configuraciones de registro. Intentaré responder a esta pregunta una vez que inicie una aplicación.
Piotr Kula
Gracias por los diagramas ... el error que recibo después de seguir los pasos a continuación de marcar la casilla "No iniciar ..." es que el tipo de salida 'Componente de tiempo de ejecución de Windows' no es compatible con uno o más de los objetivos del proyecto
fifamaniac04
Asegúrese de que el brazo esté seleccionado y no x86
Piotr Kula
Puede depurar utilizando el puerto serie como se describe aquí ... pero no está seguro de cuántos datos sensibles puede obtener al hacerlo. ms-iot.github.io/content/en-US/win10/Windbg.htm
Piotr Kula

Respuestas:

10

WOOO HOOO !!!!

OK, así que finalmente lo entendí ...

Esto es lo que funcionó para mí con solo implementar una (1) aplicación sin cabeza.

Paso 1: Abra Powershell como administrador

Paso 2: conéctese a la placa con este comando: net start WinRM... NOTA : tenía un cable Ethernet directamente desde mi computadora portátil a la placa raspberry pi 2. NOTA: si ya ha estado ejecutando VS, le dirá que ya ha establecido la conexión ...

Paso 3: en powershell, ejecuta esto a continuación Set-Item WSMan:\localhost\Client\TrustedHosts -Value minwinpc... He dejado el nombre predeterminado para mi dispositivo. NOTA cuando se le solicite, escriba 'Y'

Paso 4: Enter-PSSession -ComputerName minwinpc -Credential minwinpc\Administrator... NOTA Se le pedirá una contraseña ... suponiendo que sea predeterminada, ingrese "p @ ssw0rd" - sí, distingue entre mayúsculas y minúsculas

Paso 5: espera un poco ... en serio, toma un momento ...

Paso 6: en powershell, ahora verá el nombre del dispositivo en el indicador; escriba el siguiente comando: IotStartup remove

Paso 7: en powershell ... escriba: IotStartup list... de esto queremos obtener el nombre de la aplicación sin cabeza a la que desea predeterminar.

Paso 8: en PowerShell ... escriba: IotStartup add headless <the-exact-full-name-of-the-headless-app-here>

paso9: en powershell ... escriba: setbootoption headless.... esto le pedirá que reinicie si tiene éxito

paso 10: en powershell ... escriba: shutdown /r /t 0... esto hará que su dispositivo se reinicie, inmediatamente

- HECHO ... ¡desde aquí solo espera a que se inicie tu aplicación! Tenía un programa LED simple y finalmente comenzó por sí solo después del reinicio.

fifamaniac04
fuente
También pude usar este método. Microsoft debería solucionar el problema subyacente que le impide hacerlo desde la interfaz de usuario web.
Jamie Keeling
1

Puede adjuntar a su aplicación desde Visual Studio. (Solo depuración, la versión no parece funcionar)

  • Abra Visual Studio con el código fuente de su proyecto.
  • En el proyecto en el Explorador de soluciones, haga clic derecho sobre él.
  • Ir a depurar
  • Marque la Do not launch, but debug my code when it starts
  • Salvar
  • Haga clic en ejecutar en "Máquina remota"
  • Implementará la aplicación pero no la ejecutará.
  • Así que ejecútelo en Pi o vía WebGui, y con suerte Visual Studio se romperá con el error, dándole una mejor idea de lo que está sucediendo mal.

Si su aplicación no alcanza un punto de interrupción de excepción durante la depuración pero aún recibe un error, es otra cosa que está rota. Tal vez su tarjeta SD tiene archivos corruptos? Pruebe con otra tarjeta SD y una nueva instalación

Aplicación de inicio automático

Puedes hacerlo a través de WebGui Now

ingrese la descripción de la imagen aquí

O puede conectarse a la línea de comando IoT powershell usando SSH o Powershell, creo que SSH es más fácil.

  • Enumere las aplicaciones instaladas, puede proporcionar el nombre de su aplicación opcionalmente como filtro
  • use el comando agregar headed(para aplicaciones que usan una pantalla) o headless(para aplicaciones sin cabeza) y el nombre de la aplicación si el resultado anterior fue un único elemento o el nombre extraño completo despuésheader :
  • Reiniciar

Comandos:

  iotstartup list <optional:appname>
  iotstartup add headed:headless 64e9d643-619e-40e0-91b0-8e54f3e32aa8_953wxc6k7hb7r!App
  # AppID changed to your 64e9d643-619e-40e0-91b0-8e54f3e32aa8_953wxc6k7hb7r!App
  shutdown /r /t 0

y para restablecer la aplicación predeterminada

  iotstartup add headed DefaultApp

Más opciones de depuración

También puede adjuntar a cualquier proceso remoto sin abrir ningún proyecto, y simplemente haciendo clic en el Attachbotón de reproducción. Pero esto no funcionará bien si falla en el inicio, pero puede funcionar si una aplicación falla en una ubicación específica cada vez.

ingrese la descripción de la imagen aquí

Puede ver el volcado por caída desde WebGUI en Depuración, pero esos archivos de volcado son específicos del núcleo y pueden ser muy tediosos para la depuración. Esto no incluye ningún mensaje de error o un volcado de pila fácil de entender. Más información aquí , aunque no pude abrir ningún .dmparchivo en Visual 2015, tal vez porque es la edición comunitaria. Pero incluso mi Pro 2013 no lo abrirá.

ingrese la descripción de la imagen aquí

Piotr Kula
fuente