elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Asociación masiva de extensiones a programas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Asociación masiva de extensiones a programas  (Leído 7,421 veces)
Herchi

Desconectado Desconectado

Mensajes: 100


Ver Perfil
Asociación masiva de extensiones a programas
« en: 17 Abril 2021, 11:40 am »

Es posible asociar masivamente extensiones a programas?

¿.avi, .mp4. .wmv a potPlayer? programas PORTABLES, claro

gracias


En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #1 en: 17 Abril 2021, 23:51 pm »

Qué quieres decir con 'masivamente'?.

El programa al que se asocie una extensión debe poder 'manejarlo', si no no tiene sentido... marcará errores al intentar abrirlo (o bien lo deshecha silenciosamente).

Ten en cuenta que al asociar la apertura con un programa, dejará de estar asociado con el que estaba previamente, luego si el nuevo falla, y no recuerdas qué otro programa estaba asociado te quedarás sin poder abrirlo. Luego conviene que antes de que hagas ciertas cosas, hagas copia de seguridad del registro o por lo menos de las claves que vayas a tocar... Si no sabes bien como, al menos crea un punto de restauración.


En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.159



Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #2 en: 18 Abril 2021, 03:02 am »

Desde el Panel de Control > Programas > Programas predeterminados, puedes hacerlo. PERO como estás en la sección de Scripting supongo que quieres un Script que lo haga :xD

Básicamente primero tienes que crear un Identificador para el programa, luego asociar las extensiones a ese Identificador.

- Por ejemplo si yo tengo un programa llamado HxD en mi escritorio y quiero crear un Identificador llamado "edefile" que apunte a ese programa:

Código
  1. FType edefile="C:\Users\EdSon\Desktop\HxD.exe" "%1"

-- El "%1" es importante

- Luego hay que asociar las extensiones a ese identificador, por ejemplo si quiero que la extensión ".ede" este asociado al identificador que cree antes:

Código
  1. Assoc .ede=edefile

-- Así de simple, claro que puedes asociar más extensiones a un mismo identificador

Código
  1. Assoc .ede=edefile
  2. Assoc .edp=edefile
  3. Assoc .epc=edefile

- Al final todos los archivos con extensión .ede, .edp y .epc se abrirán con mi programa HxD.exe

Nota: Todo lo tienes que ejecutar como Administrador.
En línea

Herchi

Desconectado Desconectado

Mensajes: 100


Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #3 en: 18 Abril 2021, 10:05 am »

Desde el Panel de Control > Programas > Programas predeterminados, puedes hacerlo. PERO como estás en la sección de Scripting supongo que quieres un Script que lo haga :xD

Básicamente primero tienes que crear un Identificador para el programa, luego asociar las extensiones a ese Identificador.

- Por ejemplo si yo tengo un programa llamado HxD en mi escritorio y quiero crear un Identificador llamado "edefile" que apunte a ese programa:

Código
  1. FType edefile="C:\Users\EdSon\Desktop\HxD.exe" "%1"

-- El "%1" es importante

- Luego hay que asociar las extensiones a ese identificador, por ejemplo si quiero que la extensión ".ede" este asociado al identificador que cree antes:

Código
  1. Assoc .ede=edefile

-- Así de simple, claro que puedes asociar más extensiones a un mismo identificador

Código
  1. Assoc .ede=edefile
  2. Assoc .edp=edefile
  3. Assoc .epc=edefile

- Al final todos los archivos con extensión .ede, .edp y .epc se abrirán con mi programa HxD.exe

Nota: Todo lo tienes que ejecutar como Administrador.
gracias lo he intentado pero no noto ninguna diferencia



Código
  1. C:\WINDOWS\system32>FType imagenes="D:\Mis documentos\_PORTABLES\XnViewMP (portable) (castellano)\xnviewmp.exe" "%1"
  2. imagenes="D:\Mis documentos\_PORTABLES\XnViewMP (portable) (castellano)\xnviewmp.exe" "%1"
  3.  
  4. C:\WINDOWS\system32>Assoc .jpeg=imagenes
  5. .jpeg=imagenes
  6.  

Ahora intento abrir un archivo "foto.jpeg" y me dice Windows con qué programa abrirlo. :(
En línea

Danielㅤ


Conectado Conectado

Mensajes: 1.834


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #4 en: 18 Abril 2021, 15:31 pm »

Hola, yo por las dudas te recomendaría 2 cosas:

1. Usar otro nombre del identificador, imagenes puede ser algo reservado del sistema, aunque no creo porque estás usando la palabra en español pero por las dudas.

2. Ese programa xnviewmp.exe lo ubicaría en la unidad C, ya que todos los programas deben estar ubicados en la unidad del sistema.

Estas ejecutando esos comandos con permiso de Administrador?


Saludos
En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.159



Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #5 en: 18 Abril 2021, 19:13 pm »

Citar
Ahora intento abrir un archivo "foto.jpeg" y me dice Windows con qué programa abrirlo. :(

Eso es porque no ha encontrado "D:\Mis documentos\_PORTABLES\XnViewMP (portable) (castellano)\xnviewmp.exe" Revisa que esté bien escrito, es más, selecciónalo y cópialo para luego pegarlo y presionar Enter, debería abrir tu programa, sino, es que no lo encuentra:

Código
  1. "D:\Mis documentos\_PORTABLES\XnViewMP (portable) (castellano)\xnviewmp.exe"
En línea

Danielㅤ


Conectado Conectado

Mensajes: 1.834


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #6 en: 18 Abril 2021, 22:46 pm »

Eso es porque no ha encontrado "D:\Mis documentos\_PORTABLES\XnViewMP (portable) (castellano)\xnviewmp.exe" Revisa que esté bien escrito, es más, selecciónalo y cópialo para luego pegarlo y presionar Enter, debería abrir tu programa, sino, es que no lo encuentra:

Código
  1. "D:\Mis documentos\_PORTABLES\XnViewMP (portable) (castellano)\xnviewmp.exe"

Yo escribiría la ruta tabulandola, de esa manera me aseguraría de no errarle al programa destino.


Saludos
En línea

Herchi

Desconectado Desconectado

Mensajes: 100


Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #7 en: 19 Abril 2021, 00:25 am »

1) he ejecutado el cmd como administrador
2) lo he tabulado para llegar al exe
3) he movido el portable a c:
4) he usado dos alias diferentes.

NADA :(

he hecho un vídeo.
https://vimeo.com/538440733

gracias
En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.159



Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #8 en: 19 Abril 2021, 01:27 am »

Hay alguito más para explicar acerca de las asociaciones:

1. FType y Assoc funcionan a nivel PC (HKLM HKCR) y no de Usuario (HKCU), PERO el Sistema le hace más caso al nivel Usuario.

2. A nivel de Usuario también existe una Caché y una Lista de preferencias en las Asociaciones.

3. Seguridad de preferencias de asociaciones

Empecemos con la primera parte, FType y Assoc requieren permisos de Administrador justo por esa razón, al final no hacen más que crear ciertas Claves en el Registro de Windows, ahora bien, uno mismo puede crear las Claves a mano y mejor si lo hace a nivel de Usuario ya que no será necesario permisos de administrador

- Los equivalentes a FType y Assoc serían:

Código
  1. Reg Add HKCU\SOFTWARE\Classes\fotis\Shell\Open\Command /VE /D "\"C:\XnViewMP\xnviewmp.exe\" \"%1\"" /F
  2. Reg Add HKCU\SOFTWARE\Classes\.jpeg /VE /D fotis /F
  3. TsKill explorer

- El último TsKill explorer es para que se reinicie el Explorador de Windows y tome efecto los cambios hechos.

- Como se puede ver es alguito más complejo pero si un Programa ha hecho cambios a nivel de Usuario, el sistema a tomar esos cambios en lugar de los del nivel PC

PERO, primero yo probaría vaciando la Lista de Preferencias de asociaciones (2do punto), es decir, para tu ejemplo tal como lo vienes haciendo sería:

Código
  1. FType fotis="C:\XnViewMP\xnviewmp.exe" "%1"
  2. Assoc .jpeg=fotis
  3. Reg Delete HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpeg /F

Así es más sencillo, ahí se usa la última línea para eliminar la caché y preferencias por defecto de las asociaciones del usuario actual. Ahora solo considerar el 3er punto, la seguridad de las preferencias de asociaciones, esto ya es más complicado ya que si el usuario manualmente a seleccionado un archivo con cierta extensión y le ha dado click derecho > abrir con > Elegir otra aplicación, y ahí a seleccionado un programa y marcado el check Abrir siempre .... En este caso se agrega cierta seguridad para que no se pueda eliminar fácilmente dicha preferencia, entonces notaras un error al intentar la tercera línea anterior, algo como: Acceso denegado o que solo se ha podido borrar una parte y no todo.
En línea

Herchi

Desconectado Desconectado

Mensajes: 100


Ver Perfil
Re: Asociación masiva de extensiones a programas
« Respuesta #9 en: 24 Abril 2021, 09:51 am »

Hay alguito más para explicar acerca de las asociaciones:

1. FType y Assoc funcionan a nivel PC (HKLM HKCR) y no de Usuario (HKCU), PERO el Sistema le hace más caso al nivel Usuario.

2. A nivel de Usuario también existe una Caché y una Lista de preferencias en las Asociaciones.

3. Seguridad de preferencias de asociaciones

Empecemos con la primera parte, FType y Assoc requieren permisos de Administrador justo por esa razón, al final no hacen más que crear ciertas Claves en el Registro de Windows, ahora bien, uno mismo puede crear las Claves a mano y mejor si lo hace a nivel de Usuario ya que no será necesario permisos de administrador

- Los equivalentes a FType y Assoc serían:

Código
  1. Reg Add HKCU\SOFTWARE\Classes\fotis\Shell\Open\Command /VE /D "\"C:\XnViewMP\xnviewmp.exe\" \"%1\"" /F
  2. Reg Add HKCU\SOFTWARE\Classes\.jpeg /VE /D fotis /F
  3. TsKill explorer

- El último TsKill explorer es para que se reinicie el Explorador de Windows y tome efecto los cambios hechos.

- Como se puede ver es alguito más complejo pero si un Programa ha hecho cambios a nivel de Usuario, el sistema a tomar esos cambios en lugar de los del nivel PC

PERO, primero yo probaría vaciando la Lista de Preferencias de asociaciones (2do punto), es decir, para tu ejemplo tal como lo vienes haciendo sería:

Código
  1. FType fotis="C:\XnViewMP\xnviewmp.exe" "%1"
  2. Assoc .jpeg=fotis
  3. Reg Delete HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpeg /F

Así es más sencillo, ahí se usa la última línea para eliminar la caché y preferencias por defecto de las asociaciones del usuario actual. Ahora solo considerar el 3er punto, la seguridad de las preferencias de asociaciones, esto ya es más complicado ya que si el usuario manualmente a seleccionado un archivo con cierta extensión y le ha dado click derecho > abrir con > Elegir otra aplicación, y ahí a seleccionado un programa y marcado el check Abrir siempre .... En este caso se agrega cierta seguridad para que no se pueda eliminar fácilmente dicha preferencia, entonces notaras un error al intentar la tercera línea anterior, algo como: Acceso denegado o que solo se ha podido borrar una parte y no todo.

1º he intentado el bloque A:
Reg Add HKCU\SOFTWARE\Classes\fotis\Shell\Open\Command /VE /D "\"C:\XnViewMP\xnviewmp.exe\" \"%1\"" /F
Reg Add HKCU\SOFTWARE\Classes\.jpeg /VE /D fotis /F
TsKill explorer

2º no puedo abrir el jpeg (me pregunta con qué programa de Windows abrir esa extensión)

3º pruebo el bloque B:
FType fotis="C:\XnViewMP\xnviewmp.exe" "%1"
Assoc .jpeg=fotis
Reg Delete HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpeg /F

4º no puedo abrir el jpeg (me pregunta con qué programa de Windows abrir esa extensión)

5º vuelvo a ejecutar el bloque A pero me dice lo mismo



os pego aquí lo que me dijo la consola, especialmente hay una asignación parcial sospechosa:
Código:
Microsoft Windows [Versión 10.0.19042.928]
(c) Microsoft Corporation. Todos los derechos reservados.

C:\WINDOWS\system32>Reg Add HKCU\SOFTWARE\Classes\fotis\Shell\Open\Command /VE /D "\"C:\XnViewMP\xnviewmp.exe\" \"%1\"" /F
La operación se completó correctamente.

C:\WINDOWS\system32>Reg Add HKCU\SOFTWARE\Classes\.jpeg /VE /D fotis /F
La operación se completó correctamente.

C:\WINDOWS\system32>TsKill explorer

C:\WINDOWS\system32>FType fotis="C:\XnViewMP\xnviewmp.exe" "%1"
fotis="C:\XnViewMP\xnviewmp.exe" "%1"

C:\WINDOWS\system32>Assoc .jpeg=fotis
.jpeg=fotis

C:\WINDOWS\system32>Reg Delete HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpeg /F
ERROR: La solicitud de eliminación se completó parcialmente.

C:\WINDOWS\system32>Reg Add HKCU\SOFTWARE\Classes\fotis\Shell\Open\Command /VE /D "\"C:\XnViewMP\xnviewmp.exe\" \"%1\"" /F
La operación se completó correctamente.

C:\WINDOWS\system32>Reg Add HKCU\SOFTWARE\Classes\.jpeg /VE /D fotis /F
La operación se completó correctamente.

C:\WINDOWS\system32>TsKill explorer

C:\WINDOWS\system32>


si queréis hago un video demostrativo y lo muestro en vimeo o algo así :)
« Última modificación: 24 Abril 2021, 09:53 am por Herchi » En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
extensiones y programas que las abren
Sugerencias y dudas sobre el Foro
Free-Knowledgend 5 3,163 Último mensaje 19 Febrero 2005, 22:14 pm
por Free-Knowledgend
programas que puedan abrir extensiones .Sb .TOC ?
Software
CityLink 2 2,703 Último mensaje 14 Marzo 2012, 06:01 am
por CityLink
Seis programas que puedes sustituir por extensiones del navegador Chrome
Noticias
wolfbcn 0 1,133 Último mensaje 17 Septiembre 2015, 17:45 pm
por wolfbcn
asociación de extrensiones MASIVA
Windows
Herchi 0 1,922 Último mensaje 22 Septiembre 2019, 12:02 pm
por Herchi
extensiones como puedo abrir extensiones comprimida de todo los juegos
Dudas Generales
OPPAI67 1 2,906 Último mensaje 26 Marzo 2021, 20:27 pm
por EdePC
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines