Procedimientos recomendados para asociaciones de archivos
En la lista siguiente se recomiendan los procedimientos recomendados que debe usar al trabajar con asociaciones de archivos.
- No copiar asociaciones de archivos del Registro
- Evitar Hard-Coding rutas de acceso al Registro siempre que sea posible
- Ajustar siempre las cadenas expandiendo entre comillas
- No confunda autoplay/autorun con asociaciones de archivos
- No confunda la base de datos MIME de Internet Explorer con asociaciones de archivos
- Usar progID con formato correcto y con versiones
- No usar extensiones de nombre de archivo cortas
- Registrar nuevos tipos de archivo en la base de datos MIME de IANA
- Registrarse con el servicio web de Windows para asociaciones de archivos
- Temas relacionados
No copiar asociaciones de archivos del Registro
Se recomienda no copiar las asociaciones de archivos existentes del registro. Esto suele conducir a la propagación de asociaciones de archivos mal formadas. En su lugar, debe seguir los pasos descritos en Escenario de ejemplo de asociación de archivos.
Evitar Hard-Coding rutas de acceso al Registro siempre que sea posible
Al igual que las rutas de acceso de codificación rígida en los programas pueden causar problemas, las rutas de acceso de codificación rígida en el registro también pueden provocar problemas. En su lugar, debe usar cadenas de expansión del Registro (REG_EXPAND_SZ) para proporcionar independencia de la ruta de acceso cuando corresponda. Por ejemplo, en lugar de usar este método:
HKEY_CLASSES_ROOT
MyVendor.MyProgram.1
DefaultIcon
(Default) = C:\WINNT\hta.exe,1
Debe usar este método:
HKEY_CLASSES_ROOT
MyVendor.MyProgram.1
DefaultIcon
(Default) = "%SYSTEMROOT%\hta.exe,1"
Ajustar siempre las cadenas expandiendo entre comillas
La expansión de cadenas puede contener espacios cuando se expanden. Dado que los espacios se interpretan a menudo como delimitadores de argumentos, causan problemas en determinadas circunstancias. Por ejemplo, un comando para invocar MyProgram se puede almacenar en el registro como:
%SYSTEMROOT%\MyProgram %1 %2
MyProgram espera que %1 sea la ruta de acceso completa a un nombre de archivo y %2 es un modificador para indicar alguna acción. Si este comando se ejecuta con argumentos C:\Archivos de programa\My Documents\document.txt e /print, y suponiendo que un SYSTEMROOT de C:\WINNT, se expande a:
C:\WINNT\MyProgram C:\Program Files\My Documents\document.txt /print
En este caso, MyProgram interpreta que el primer argumento es C:\Program y el segundo argumento es Files\My, que no es el comportamiento previsto. Sin embargo, los argumentos se interpretan correctamente, independientemente de si contienen espacios, si las cadenas de expansión se encapsulan entre comillas de la siguiente manera:
"%SYSTEMROOT%\MyProgram" "%1" "%2"
No confunda autoplay/autorun con asociaciones de archivos
Las asociaciones de archivos son similares a reproducción automática o autorreprobación de alguna manera. Sin embargo, Autoplay/Autorun ofrece instalaciones independientes y distintas de las proporcionadas por asociaciones de archivos. Para obtener más información, consulte Creación de una aplicación de CD-ROM habilitada para autoejecutar.
No confunda la base de datos MIME de Internet Explorer con asociaciones de archivos
Las asociaciones de archivos son similares a la base de datos MIME de Windows Internet Explorer, en que los tipos de archivo pueden (y deben) incluir una definición de tipo MIME. Sin embargo, la base de datos MIME de Internet Explorer es independiente y distinta de las asociaciones de archivos.
Usar progID con formato correcto y con versiones
Use siempre progID con versiones, incluso si solo hay una versión del ProgID. Los ProgID con versiones ayudan a evitar conflictos y sobrescrituras de ProgID. También habilitan diferentes versiones de una aplicación para coexistir.
No usar extensiones de nombre de archivo cortas
Las extensiones de nombre de archivo long ofrecen las siguientes ventajas:
- La longitud limitada de extensiones cortas hace que sean propensos a colisiones de extensiones. Una colisión de extensiones se produce cuando se usa la misma extensión para clasificar varios tipos de archivo. El uso de extensiones largas reduce significativamente las posibilidades de colisión.
- Los nombres de archivo cortos tienden a ser algo crípticos. Las extensiones largas tienden a ser más significativas porque la información adicional se puede incrustar en la extensión.
Para obtener más información, vea extensiones de nombre de archivo.
Registrar nuevos tipos de archivo en la base de datos MIME de IANA
Internet Assigned Numbers Authority (IANA) mantiene una base de datos pública de tipos MIME registrados. Al definir un nuevo tipo de archivo público, se recomienda definir también un tipo MIME para el tipo de archivo y registrar este tipo con la IANA. No hay ningún costo para el registro.
Registrarse con el servicio web de Windows para asociaciones de archivos
Los desarrolladores de aplicaciones pueden registrarse con el servicio web de Windows que los usuarios usan para buscar aplicaciones que pueden funcionar en tipos de archivo específicos. El proceso de registro con el servicio web se detalla en el proceso de incorporación del sistema de asociación de archivos de Windows (KB 929149).
Temas relacionados
-
Directrices para administrar aplicaciones predeterminadas en Windows Vista y versiones posteriores
-
Establecer el acceso al programa y los valores predeterminados del equipo (SPAD)