Windows 8 está perdiendo opciones en el menú "Abrir con" después de cambiar las asociaciones de archivos

18

Cuando configuro un programa para abrir un tipo de archivo específico de manera predeterminada, funciona (como Word 2013 para archivos PDF). Sin embargo, cuando cambio el valor predeterminado al lector, pierdo Word como una opción que puedo elegir en el open withsubmenú.

¿Cómo puedo hacer que se pegue?

Parece que hay algo especial en Word. Agregar Notepad ++ como predeterminado y luego cambiarlo nuevamente parece mantener Notepad ++ en el submenú.

La versión de Word es 2013.

En caso de que no estuviera claro, estoy usando la versión RTM (no la vista previa).

soandos
fuente
¿Intentó "Asociar un tipo de archivo o protocolo con un programa" desde el panel de control a través de "Programas predeterminados"?
avirk
@avirk Suponiendo que quiere decir simplemente configúrelo como predeterminado, eso funciona (pero no es lo que va mal). Cambiar el reverso predeterminado elimina Word como una opción
soandos
Creo que valdría la pena intentarlo.
avirk
¿comprobó que el valor se está insertando en el registro en la ruta HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.docx\OpenWithList? Debe haber una lista de programas que tenga asociados para el .docx o cualquier extensión que desee verificar.
avirk
@avirk Muy extraño. Es allí (como es el cromo, que también no aparece en la lista), pero el programa predeterminado para abrirlo (lector) no aparece
soandos

Respuestas:

4

¿Qué es el Up!?!

Hola. Me encanta cuando alguien dice;

"[...] cómo depurarlo?"

En realidad, no tengo una instalación de la configuración de Windows 8, y tampoco he jugado con una instalación de Windows 8, por lo que voy a suponer que hay algunas similitudes fundamentales con sus predecesores. Trataré de decir suposiciones mientras las hago.

Llamando a los tiros

Supongo que, según su descripción del problema, es que el sistema no puede registrar las entradas adecuadas en el registro, de modo que cuando ejecute "abrir" después de hacer "abrir con ...", verá la aplicación que seleccionado la última vez.

Le explicaré su problema y probaré o refutaré mi suposición inicial. Si no necesita toda mi verbosidad a continuación, puede saltar / escanear a la sección Recon, donde comenzamos a tratar de descubrir el problema.

Arreglos rápidos

Antes de entrar en los pasos más complicados que se describen a continuación, primero debe investigar la interfaz de Programas predeterminados que se encuentra en el Panel de control . Puede obtener un efecto similar a través del menú "abrir con ...", pero ya dijo que eso no funcionaba para usted. ** Asegúrese de configurar la casilla de verificación que indica que debe recordar su configuración como la aplicación predeterminada para la aplicación que haya seleccionado.

Debajo de la interfaz de Programas predeterminados en el Panel de control puede haber opciones para "restablecer los valores predeterminados" o volver a una versión anterior. Puede considerar estas diversas opciones para ver si resuelven su problema. Haga esto primero, porque serán las soluciones más fáciles. Si no funcionan, debe continuar con las opciones a continuación.


Supuestos

Estas son las suposiciones que preveo. Si alguno de ellos está fuera de la base, avíseme y, si es necesario, me tomaré el tiempo para configurar una instalación de Windows 8.

El registro

Creo que la suposición más importante que estoy haciendo es que el sistema operativo todavía usa el registro y, para los lugares donde doy ejemplos, supongo que el diseño / estructura del directorio del registro en Windows 8 también es similar a sus predecesores.

Cmd.exe

Personalmente, a menudo prefiero un símbolo del sistema, por lo que probablemente describa los pasos en el contexto de una sesión de terminal. Supongo que Windows 8 todavía tiene cmd.exe ; Me sorprendería mucho si no fuera así.

Editor de registro

Si hay un registro, entonces probablemente haya una herramienta para ver / editar el registro. Asumiré que el nombre de la GUI y las herramientas de línea de comandos son los mismos que en los predecesores.

Privilegios de usuario

Asumiré que las formas de invocar shell's con privilegios elevados son lo suficientemente similares a los predecesores del sistema operativo que sabrás qué hacer. Si estoy fuera de la base aquí, solo pídeme un poco de elaboración y haré lo que pueda.

SysInternals Suite

Me decepcionaría mucho si no estuvieran disponibles en Windows 8. No puedo creer que no estén disponibles porque son tan fundamentales para los ciclos de desarrollador / control de calidad por los que pasan Microsoft y los desarrolladores externos.

WinDbg.exe, DDK y SDK

Supongo que aún no tienes estos instalados. Esta bien. Probablemente podamos resolver el problema sin requerir esas herramientas de servicio pesado. Ir a través de la Recon primera sección y si es necesario (o simplemente quiere) para ir más profundo, entonces hablaremos de estas herramientas.

Recon

Siempre trate de realizar su tarea por el medio más simple posible primero. Comenzar con el depurador de Windows sería excesivo para un punto de partida, y sería un poco más difícil detectar la pieza / secuencia de eventos que son relevantes.

Si aún no ha descargado e instalado The SysInternals Suite , debe hacerlo ahora. Como mínimo, necesitará Process Explorer y Process Monitor para los primeros intentos de detectar lo que está mal. Ambas herramientas son parte de la suite, que puede descargar como un archivo * .zip, pero si tiene una conexión de red deficiente, puede optar por descargar las dos herramientas individualmente para hacerlo más rápido.

Descomprima la suite / herramientas en un lugar apropiado en su sistema (en gran medida su preferencia personal). Si está utilizando la utilidad de descompresión de Windows predeterminada, entonces querrá eliminar el archivo de Zona antes de descomprimir el archivo. El archivo de zona es cómo el sistema operativo sabe que "este archivo se descargó de Internet [...] ejecutado bajo su propio riesgo [...] desmarque la casilla [...]". Estoy seguro de que has visto un mensaje similar a ese en un cuadro emergente antes. Por lo general, hay una pequeña casilla de verificación en la parte inferior izquierda de la ventana emergente que recordará su decisión en el futuro si la alterna una vez.

Otra forma de ver esa casilla de verificación es hacer clic derecho -> Propiedades en el archivo que descargó. La casilla de verificación debe estar en la parte inferior de la pestaña General . Al activar esa casilla de verificación una vez, se eliminará el archivo de zona del binario (como nota al margen, el archivo de zona se almacena en un flujo de datos alternativo del binario en cuestión, pero esa es otra discusión. Por ahora, solo use las ventanas emergentes o interfaces de propiedades de archivo para manipular archivos de zona .

Asegúrese de eliminar el archivo de zona del archivo * .zip antes de desempaquetarlo con la herramienta zip predeterminada de Windows. Si no lo elimina del archivo * .zip, la utilidad ZIP marcará cada archivo desempaquetado con un archivo de zona y luego será un problema obtener la ventana emergente para cada binario que ejecute en la suite.

Vamos a comenzar con dos herramientas: * Process Explorer (procexp.exe) * Process Monitor (procmon.exe)

Puede hacer referencia al archivo * .chm correspondiente si desea obtener más información sobre ellos. Comenzaremos con Process Explorer y si no podemos detectar rápidamente el problema, pasaremos a Process Monitor (que es un poco más complicado de ejecutar), y si aún no podemos resolver el problema, hablaremos sobre sacar las armas grandes. Sin embargo, el hecho es que a menudo encuentro lo que necesito saber en la fase de reconocimiento y no necesito iniciar el depurador.

Antecedentes y comprensión

El registro es donde el sistema almacena las asignaciones que relacionan las extensiones de archivo con las aplicaciones que saben cómo manejarlas. Por ejemplo, puede usar las herramientas de línea de comandos ftype y assoc para ver / manipular las asignaciones de extensiones a las aplicaciones.

Para ver el tipo de archivo asociado con la extensión ".txt", ejecute el siguiente comando desde un terminal.

$> assoc .txt
.txt=txtfile

Esto indica que la extensión de archivo .txt está asignada a la clase de tipos de archivo txtfile . Luego, para ver la aplicación que está asociada con la clase txtfile , ejecute el comando

$> ftype txtfile
txtfile=%SystemRoot%\system32\notepad.exe %1

Estas herramientas solo están leyendo la configuración de registro para el sistema. Puede verlos usted mismo con una herramienta como reg.exe que ejecutaría desde un terminal o la mayoría de las personas preferiría el editor de registro GUI regedit.exe . En esa ubicación, verá algunas de las extensiones, clases de tipo de archivo y asociaciones de aplicaciones que simplemente buscaría en la sección HKEY_CLASSES_ROOT. Directamente debajo de esa colmena, debe encontrar una clave tanto para ".txt" como para "txtfile" y, por supuesto, mucho, mucho más.

Aquí hay algunos ejemplos más del uso de las utilidades assoc y ftype .


Asegúrese de alimentar extensiones a la asociación . Creo que ya lo sabe, pero para ser claros, las extensiones de archivo son el "punto seguido de 3 o 4 caracteres" que terminan un nombre de archivo. Por ejemplo, application.exe , document.txt o presentaion.ppt. La utilidad assoc espera que proporciones el "." y los 3/4 caracteres como su parámetro.

$> assoc .exe
.exe=exefile
$> assoc .txt
.txt=txtfile

Separado y distinto de la extensión del archivo, está el tipo de archivo . Se pueden agrupar múltiples extensiones de archivo en un solo tipo de archivo . Considere cómo ".html" y ".htm" se asignan al mismo tipo de archivo; es decir, "htmlfile". El siguiente ejemplo intenta demostrar este punto aún más.

$> assoc .html
.exe=htmlfile
$> assoc .htm
.txt=htmlfile
$> ftype htmlfile
htmlfile="C:\Program Files (x86)\Internet Explorer\iexplorer.exe" -nohome

Además, observe que el registro contiene las siguientes claves en la sección HKEY_CLASSES_ROOT.

  • HKCR.html
  • HKCR.htm
  • HKCR \ htmlfile

Si hay una manera conveniente de cargar / adjuntar / compartir un archivo txt, ejecute los siguientes comandos y veré el resultado que crean.

$> cd \somewhere\easy\for\you\to\find\
$> assoc > extension_associations.txt
$> ftype > filetype_handlers.txt

Ahora debería poder abrir las carpetas en las que escribió esos archivos y compartirlas. Los siguientes comandos también deberían abrir los archivos (si parece que puede encontrar los archivos que creó).

$> notepad \somewhere\easy\for\you\to\find\extension_associations.txt
$> notepad \somewhere\easy\for\you\to\find\filetype_handlers.txt

Si no puede compartir archivos completos * .txt conmigo, entonces al menos ejecute estos dos comandos y solo ponga sus resultados en los comentarios.

$> assoc .txt
.txt=textfile
$> ftype textfile
textfile="C:\Program Files (x86)\Notepad++\notepad++.exe" "%1"

Si no ve nada allí, entonces debe comenzar configurándolo en algo. Asegúrese de tener privilegios elevados (es decir, privilegios de administrador) cuando realice esos cambios, de lo contrario, probablemente no funcionarán como espera.

Explorador de procesos

TODO si es necesario

Monitor de proceso

TODO si es necesario

Instalación de entornos de depuración de Windows

GuyHoozdis
fuente
Tres cosas: 1) gracias por la larga respuesta. 2) Creo que está sucediendo algo más, ya que ftype dice que no hay nada asociado con ninguna extensión que le arroje. 3) El programa que quiero asociar es Word 2013, que es un servicio, no un exe per se (o si lo es, no tengo idea de dónde está, el administrador de tareas muestra un servicio en ejecución). ¿Alguna idea?
soandos
No hay problema. Asegúrese de alimentar extensiones a la asociación . Creo que ya lo sabe, pero para ser claros, las extensiones de archivo son el "punto seguido de 3 o 4 caracteres" que terminan un nombre de archivo. Por ejemplo application.exe , document.txt o presentaion.ppt. La utilidad assoc espera que proporciones el "." y los 3/4 caracteres como su parámetro. $> assoc .exe .exe = exefile $> assoc .txt
GuyHoozdis
ftype .txt proporciona "Tipo de archivo '.txt' no encontrado o ningún comando de apertura asociado con él". por ejemplo
soandos
Pasar una extensión de archivo a la utilidad ftype es incorrecto . Tómese un momento para revisar y prepárese para mejorar su comprensión de la situación, los comandos de ejemplo que escribí en la "ACTUALIZACIÓN" de la publicación original. Después de hacer eso, hágase esta pregunta "¿Cuál es la diferencia entre un tipo de archivo y una extensión de archivo ? Si no sabe leer mis ejemplos por segunda vez. Si aún no tiene sentido, entonces intentaremos un enfoque diferente.
GuyHoozdis
Windows no tiene una terminal. Tiene un símbolo del sistema y los comandos no comienzan con $ como lo hacen en los sistemas Unix.
Elmo
1

El Editor de programas predeterminado puede editar la lista 'Abrir con ...' en Windows 8:

File Type settings-> Change 'Open with' programs-> Seleccione un tipo de archivo

editor de programas predeterminado abierto con lista

Agregue el programa que desee 'pegar' y haga clic en Guardar.

Nota: en la versión actual, las aplicaciones de escritorio normales aparecen aquí, por lo que no hay forma de agregar / eliminar una aplicación de Metro. Pero aún así debería resolver tu pregunta.

Factor místico
fuente
¿Te importa pegar la captura de pantalla antes de esto? No puedo encontrar este cuadro de diálogo
soandos
@soandos es un hipervínculo en la esquina inferior izquierda de la pantalla de configuración de Tipo de archivo
Factor Mystic
Soy un idiota, no vi el enlace de descarga
soandos
¿Cómo puedo agregar la palabra 2013? Es un servicio, no un ejecutable
soandos
@soandos Todavía está instalado en su disco duro. Para mí Word está instalado aC:\Program Files\Microsoft Office 15\root\office15\winword.exe
Factor Mystic
0

Hacer un Con Open -> Seleccione Predeterminado Programa . Cuando se abra la ventana, desactive la casilla "Usar esta aplicación para todos los archivos .pdf y elija Word para abrirla. Si no está en la lista, use el enlace" Buscar otra aplicación en esta PC "en la parte inferior de la lista.

Una vez que abra el archivo PDF con Word, pero no lo configure como el programa predeterminado, debería aparecer en el menú contextual "abrir con" la próxima vez que lo use.

Ingrese la descripción de la imagen aquí

Moab
fuente
3
No lo hace. Esa es mi pregunta ¿Por qué no lo hace?
soandos
¿Estás usando RTM W8? ¿Leíste mis instrucciones cuidadosamente?
Moab
RTM, y si. Hice otro programa predeterminado, luego lo abrí con Word, luego miré el abrir con submenú. Todavía no estaba allí (estoy hablando del menú inmediato, no del "Elegir menú predeterminado" sin marcar la casilla
soandos
No estoy seguro de lo que está mal, funciona en mi Windows 8 RTM. Esa información se almacena en el registro, lo más probable es que sea una entrada de MRU.
Moab
¿Alguna idea de cómo depurarlo?
soandos