Solución: no se pueden abrir archivos ejecutables (.EXE) en Windows
Después de infectarse con un virus o cambiar incorrectamente el registro del sistema, el usuario puede encontrarse con el hecho de que los archivos EXE ejecutables (archivos MSI de instalación o archivos PowerShell/CMD/VBScript) no se abren en Windows. Cuando ejecuta cualquier programa (acceso directo) desde el Explorador de archivos, no sucede nada, aparece una ventana que le pide que seleccione un programa o todos los archivos EXE se abren en un programa diferente (por ejemplo, en notepad.exe o en paint.exe). En este artículo, veremos cómo solucionar el problema cuando no puede ejecutar ningún archivo ejecutable o aplicación en Windows.
¿Cómo arreglar asociaciones de archivos EXE rotas en Windows?
Cuando ejecuta cualquier archivo de aplicación *.exe en Windows, aparece una ventana que le pide que seleccione un programa (
How do you want to open this file?):
O aparecen errores:
This file does not have an app associated with it for performing this action. Please install an app, if one is already installed, create an association in the Defaults Apps Settings page.Windows cannot access the specified device, path, or file. You may have the appropriate permissions to access the item.Windows can't open this file.
La mayoría de las veces, este problema aparece después de una infección de virus o un intento fallido de "optimizar" el registro de Windows. El origen de este problema es que las asociaciones de archivos para los archivos *.exe se restablecieron en el registro de Windows. Para restaurar asociaciones de archivos ejecutables en Windows, debe usar el Editor del registro (regedit.exe), pero tampoco se abrirá porque también es un archivo ejecutable. Ni cmd.exe ni PowerShell se abren. ¿Qué hacer en este caso?
Cree un archivo de texto simple en su escritorio;
Pegue la siguiente línea en el archivo:
start cmdCambie el nombre del archivo a run.bat;
Haga clic derecho en el archivo y seleccione Ejecutar como administrador;
Confirme la elevación de privilegios en UAC y se abrirá una ventana de símbolo del sistema elevada;
Puede ejecutar regedit.exe y realizar cambios en el registro manualmente (el método se describe a continuación) o pegar el siguiente código en la ventana del símbolo del sistema:
reg delete HKEY_CLASSES_ROOT\.exe /ve /f reg add HKEY_CLASSES_ROOT\.exe /ve /d exefile /f reg delete HKEY_CLASSES_ROOT\exefile /ve /f reg add HKEY_CLASSES_ROOT\exefile /ve /d Application /f reg delete HKEY_CLASSES_ROOT\exefile\shell\open\command /ve /f reg add HKEY_CLASSES_ROOT\exefile\shell\open\command /f /ve /d "\"%1\" %*\" assoc .exe=exefile-
Estos comandos restablecerán las asociaciones de archivos EXE a las predeterminadas;
Reinicie su computadora e intente ejecutar cualquier aplicación.
Si incluso los archivos *.bat y *.cmd no se inician en su computadora, deberá editar el registro manualmente en modo seguro.
Inicie la computadora en modo seguro (simplemente interrumpa el inicio de Windows presionando el botón de encendido tres veces seguidas);
La computadora se iniciará en el entorno de recuperación de Windows (WinRE). Seleccione Solución de problemas -> Opciones avanzadas -> Configuración de inicio -> Reiniciar. Presione F4 para iniciar Windows en modo seguro;
Ejecute el Editor del Registro (
regedit.exe) y vaya a la clave de registro HKEY_CLASSES_ROOT\.exe;
Cambie el valor del parámetro de registro Predeterminado a exefile;
Luego vaya a HKEY_CLASSES_ROOT xefile\shell\ope
"%1" %*Luego, por analogía, cambie los valores del parámetro Predeterminado a
"%1" %*en las claves de registro HKCR xefile\shell\open y HKCR xefile;
Reinicie su computadora normalmente. El Explorador de archivos ahora debería usar las asociaciones de archivos EXE predeterminadas. Intente ejecutar cualquier archivo *.exe.
Además, debe seguir estos pasos para restaurar las asociaciones de archivos *.exe:
Ejecute el comando para restablecer las asociaciones de archivos EXE:
assoc .exe=exefileCompruebe que falta la clave UserChoice en la clave de registro HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.exe. Si existe tal clave, elimínela;
Verifique la integridad de la imagen de Windows y los archivos del sistema usando los comandos:
sfc /scannow DISM /Online /Cleanup-Image /RestoreHealthAsegúrese de que su programa antivirus no bloquee el lanzamiento de archivos ejecutables;
Si Windows muestra una advertencia de seguridad al abrir archivos ejecutables, siga las instrucciones de este artículo.
Windows no puede ejecutar archivos EXE desde un recurso compartido de red
Si los usuarios pueden ejecutar archivos EXE localmente en sus computadoras, pero aparece un error al iniciar archivos desde carpetas compartidas de red, entonces la causa del problema puede ser diferente.
Verifique los permisos NTFS actuales para la carpeta o el archivo compartido. Si al usuario no se le asigna el permiso NTFS Lectura/Ejecución, aparecerá un error al ejecutar el archivo ejecutable:
Windows cannot access \\server1\sharedfolder\file.exe. You do not have permission to access applicatin.exe file.Cambie los permisos de NTFS manualmente o a través de PowerShell.
Intente ejecutar el archivo ejecutable en modo de compatibilidad. Para hacer esto, abra las propiedades del archivo EXE, vaya a la pestaña Compatibilidad, seleccione el modo de compatibilidad con Windows 8. Intente ejecutar la aplicación desde un recurso compartido de red.
El problema puede estar relacionado con el hecho de que está intentando conectarse a una carpeta compartida ubicada en un dispositivo que solo admite el protocolo SMB v1 (podría ser un dispositivo de almacenamiento NAS, un servidor de archivos con un versión heredada del sistema operativo, como Windows XP o Windows Server 2003).
Los errores pueden indicar esto:
The application was unable to start correctly (0xc00000ba)Exception thrown at 0x00007FFA2B86624E0xC0000005: Access violation reading location 0x0000000000000000)Nota. Cuando un cliente y un servidor interactúan sobre el protocolo SMB, se selecciona la versión máxima del protocolo para la comunicación, que es compatible simultáneamente con el cliente y el servidor (consulte el artículo Versiones SMB en Windows). Puede determinar la versión SMB que su cliente está usando para conectarse al servidor de archivos usando el
Get-SmbConnectionCmdlet de PowerShell.
Compruebe si SMBv2 o SMBv3 está habilitado en su servidor de archivos mediante el comando de PowerShell:
Get-SmbServerConfiguration | Select EnableSMB2ProtocolSi SMBv2 está deshabilitado, puede habilitarlo:
Set-SmbServerConfiguration -EnableSMB2Protocol $trueAdemás, si está utilizando Linux Samba como servidor de archivos, puede deshabilitar SMB1 en el archivo de configuración smb.conf. Añadir la línea
min protocol = SMB2hacia
[global]sección y reinicie Samba.
De forma predeterminada, no puede acceder a las carpetas compartidas alojadas en un servidor de archivos que ejecute Windows Server 2003 o en un dispositivo NAS que solo admita SMB1. Para acceder a un recurso compartido SMB de este tipo desde versiones modernas de Windows 10, debe habilitar el cliente SMB 1.0/CIFS en las computadoras de los usuarios (lo cual no se recomienda por razones de seguridad).
La solución correcta, en este caso, es migrar los recursos compartidos con archivos ejecutables a Windows Server 2012 R2/2016/2019, donde el protocolo SMB1 está deshabilitado. En este caso, podrá ejecutar archivos ejecutables ubicados en carpetas compartidas desde su dispositivo con Windows 10.










