Porque 1.) Usted está experimentando cambios de asociación de tipo de archivo persistentes y no solicitados y 2.) Tanto el software de terceros como las utilidades del sistema Mac OS se están configurando, de nuevo, sin solicitud y de forma persistente, como aplicaciones de primera respuesta para las principales tipos de archivos, por lo tanto, creo que tiene una base de datos de servicios de inicio dañada. (Si bien hay un problema conocido con Adobe CC2017 como la causa de la apertura de los archivos .pdf
en Photoshop en lugar de en Preview.app, esto no explica el comportamiento de Grab haciendo lo mismo con los archivos .jpg
).
[NOTA: Los siguientes párrafos están tomados de The Eclectic Light Co. sitio. Los incluyo aquí para proporcionar un conjunto de instrucciones de respaldo para intentar una solución en caso de que el enlace muera, pero recomiendo visitar el sitio real si es posible.]
No hay una forma sencilla de reconstruir la base de datos de Launch Service, a menos que tenga una utilidad como OnyX que incluya esto como una característica. Al reiniciar en modo seguro (con la tecla Shift presionada) se vacían algunos cachés, pero no toca la base de datos de Servicios de inicio. Incluso si alguien te dijera dónde encontrar los archivos, no puedes simplemente botarlos.
La herramienta que mantiene la base de datos de Servicios de lanzamiento es lsregister
, que está escondida en /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support
.
No tiene una página de manual, pero si escribe /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -h
en la Terminal devolverá su información de uso.
Para restablecer la base de datos de Servicios de lanzamiento, debe usar su opción -kill
. Desea que esto se aplique a través de un análisis de directorio recursivo, por lo que también necesita la opción -r
. Es aconsejable ver su progreso en modo detallado (opción -v
), y debe especificar los dominios a los que se aplicará. Generalmente, el comando aconsejado es:
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain u -domain s -domain l -v
a la que algunos agregan la opción de escanear ubicaciones predeterminadas para generar la base de datos, -seed
.
Hay algunos problemas con ese comando como se indica. Cubre tres dominios (sistema, local y usuario), lo que lo hace muy extenso, quizás más de lo necesario. También utiliza una sintaxis diferente de la dada para el comando en Sierra 10.12.6. En su lugar, sugiero que intente en primera instancia
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -v -apps u
Eso debería hacer el truco. Si no lo hace, entonces amplía los dominios con
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -v -apps u,s,l
y finalmente intente
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -v -all u,s,l
que debería borrar todo de la base de datos.
Tampoco es imposible que tengas que usar la sintaxis más antigua con
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -v -domain u
El problema con el restablecimiento de la base de datos de Servicios de inicio es que su Mac tardará tiempo en reconstruirla gradualmente, durante la cual sus funciones se ejecutarán mucho más lentamente. Después de un tiempo, sin embargo, se habrá reconstruido, y la aplicación correcta debería estar asociada con cada tipo de documento.
En cuanto a
cómo se corrompió la base de datos, hay docenas de formas. Aquí hay un ejemplo de una causa reciente (no necesariamente relacionada con la suya):
La versión de Firefox corrompe la base de datos de la asociación de archivos MacOS .