c# - La aplicación de escritorio no se abre después de la instalación en el sistema cliente
windows-installer (5)
Problemas de inicio de la aplicación : Aquí hay una versión corta: la aplicación WPF se bloquea cuando inicio
Registros : siempre revise todos los registros de eventos , registros de aplicaciones y registros MSI , si están disponibles. Solo para mencionarlo. Tal vez intente adjuntar el depurador para la prueba como se describe aquí , siempre que la aplicación despegue del todo. Luego paso a través del código.
Los culpables habituales
: es probable que simplemente
lack a runtime
tenga
lack a runtime
, tenga un
bitness problem
(32/64 bits) o
insufficient permissions / privileges
, o
configuration errors
(
ini
,
xml
,
registry
,
etc...
).
Para resumir - torpedos, propagación completa abajo - nada demasiado tonto para no mencionar :-):
Períodos de ejecución faltantes : Primero, siempre revise los tiempos de ejecución faltantes. Por ejemplo:
.Net
,.Net Core
,Java
,Silverlight
,Direct X
(utilizado incluso para aplicaciones ahora),VC++ Runtime
,MS-XML
(heredado),etc...
Recuerde que vienen en versiones diferentes y que algunos no pueden coexistir en la caja, mientras que otros pueden correr uno al lado del otro.
Código de error : buscando códigos de error y mensajes de excepción.
- "The Magic Number Database" - búsqueda en línea.
- Comprobación de códigos de error - varias herramientas y enfoques.
Herramientas de depuración : información sobre las herramientas de depuración .
- Herramientas para depurar problemas de dependencia :
ProcMon.exe
,VS
,Dependency Walker
,etc...
- Errores de dependencia COM
ProcMon.exe : La herramienta del oficio. La herramienta de talla única para todos. Las rodillas de la abeja, la máxima, el salto cuántico, el pijama del gato. Puede ser un desafío usarlo de manera efectiva, pero es la mejor herramienta de depuración de propósito general que es gratuita.
Otras ideas :
-
Ajustes de configuración
?
- Pecados de la caja de dev : ¿Referencias duras codificadas? Servidores de prueba / enlaces UAT?
- Manifiestos , archivos INI y archivos XML ?
- Configuración del registro ? HKLM / HKCU
- Cadenas de conexión . Ver la sección Autenticación y Autorización a continuación también.
-
Platform &
Bitness
?
(ARM, Intel 32/64, etc ...).
-
Muy común de leer de la colmena de registro incorrecta (
la
clásica pérdida de tiempo):
-
HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432Node/MyApp/MySettings
(32 bits) -
HKEY_LOCAL_MACHINE/SOFTWARE/MyApp/MySettings
(64 bits)
-
-
Muy común de leer de la colmena de registro incorrecta (
la
clásica pérdida de tiempo):
-
¿Prerrequisitos y
Dependencies
?
- Sobre el tema del escaneo y depuración de dependencias .
- Dependencia Walker: Dependencies .
- ¿ Fuslogvw.exe te dice algo? (Fallos de enlace de ensamblado .NET para una aplicación .NET). Cómo el tiempo de ejecución localiza asambleas
- Verificación rápida: visualización de los módulos de Visual Studio.
-
Registro faltante / roto
(dependencias indirectas)
- Falta COM, Interoperabilidad COM (regasm.exe), COM sin registro (basado en manifiesto)
- El manifiesto de ensamblado Win32 lado a lado roto (oscuro, puede ser causado por el reenvasado de aplicaciones corporativas descuidadas, puede golpear PC aparentemente aleatorias)
-
Instalación de GAC?
- Existen dos GACs .
- Problemas de confirmación de GAC / WinSxS : los archivos de GAC / WinSXS no se instalan en la GAC hasta la fase de confirmación que está después de StartServices.
- ¿Permisos y privilegios ? - local - permisos ACL y privilegios NT ?
-
Autenticación / Autorización
- relacionada con la red
- Usuario local, usuario de dominio, Active Directory: membresía de grupo, política de grupo, etc.
- Usuario de inicio: ¿Problemas de perfil de usuario? Tal vez intente con otro usuario conectado en el que falla?
- Modo de autenticación : autenticación de Windows. Autenticación de SQL Server, etc ...
- ¿ Problemas generales de red y proxy ? (proxies, WINS, DNS y todas las complejidades involucradas en la red. ¿Las rutas UNC son accesibles?)
- Licencias ? (posiblemente relacionado con controladores y controladores de hardware)
- Interferencia de software de seguridad ? (firewall de software / hardware, antivirus, herramientas y paquetes de encriptación, etc ...)
- ¿Versión o edición del SO? ( Problemas de Windows 7 )
- ¿Localización? ¿Sistemas no ingleses?
- Conductores?
- ¿Hardware?
- Codificacion?
- Corrupción del sistema? (La hora incorrecta, los errores de disco, los nombres de archivo y ruta son demasiado largos, el disco está lleno, "algo está mal")
- ¿Máquina objetivo de la naturaleza? Virtuales? SOE? ¿Las máquinas de destino son máquinas reales? Máquinas de prueba?
- ¿Bloqueo / bloqueo / uso de archivos y claves de registro?
- ¿Malware? Puede causar prácticamente cualquier cosa en términos de problemas.
Enlaces :
Actualmente estoy trabajando con Visual Studio 2017 con 4.6.1 .NET Framework. Creé el archivo de instalación para mi aplicación de escritorio, la instalación se instala y se ejecuta perfectamente en mi sistema. El problema es que la instalación se instala correctamente en otras computadoras pero la aplicación no se abre.
editar
Se descargó el framework .net en el sistema cliente, pero sigue ocurriendo el mismo problema.
editar 2
Realicé un escaneo de dependencias usando el andador de dependencias. Dijo que había un montón de archivos que el sistema no pudo encontrar - error al abrir el archivo. El sistema no puede encontrar los archivos especificados.
API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL
DCOMP.DLL
IESHIMS.DLL
Además, hubo un error en los módulos con un tipo x86 encontrado, incluido el archivo setup.exe, pero no sé cómo sucedió esto. He seleccionado 64 donde vi la opción enumerada. Por favor, encontrar la screenshot . Si este es el problema, ¿cómo resuelvo esto?
Para implementar con éxito una aplicación, también debe implementar todos los componentes a los que la aplicación hace referencia. Ver el proceso de implementación
Los usuarios pueden necesitar permisos administrativos o permisos de usuario similares en la computadora para instalar componentes bootstrapped. Para las aplicaciones ClickOnce, esto significa que el usuario puede necesitar permisos administrativos para instalar la aplicación, independientemente del nivel de seguridad especificado por la aplicación. Una vez instalada la aplicación, el usuario puede ejecutar la aplicación sin permisos administrativos.
Supongo que usted y su cliente están ejecutando la instalación y la aplicación ejecutada como Administrador.
Posible causa raíz:
- El requisito previo del sistema no se cumple, debe verificar que todas las dependencias estén listas en el sistema cliente de destino o agregar el requisito previo a su guía de instalación
- Problemas de privilegio, puede copiar archivos o cambiar el registro localmente con derechos de administrador, pero el cliente no lo está. Si es así, necesita cambiar los archivos a "C: / Users {nombre de usuario} / AppData / Roaming" o instalar con privilegios de administrador en el sistema cliente.
En tal situación, la aplicación posiblemente se estrelló en el sistema cliente:
- Revise su registro de aplicación si hay algún error
- Revise el registro de Windows si hay algún error
- Volcar la información del sistema usando WinDbg.exe y depurarla
También me enfrenté a ese tipo de problema antes. Simplemente intente instalar otra ubicación que no esté dentro del archivo de programa de C: / Drive. Puede elegir una unidad diferente o puede instalar en la unidad C también, pero no dentro de los archivos del programa.
asegúrese de que el marco .net 4.6.1 esté instalado en el sistema cliente. Debido a que la aplicación requiere el trabajo con marco .net instalado en la computadora