Archivos de programa

06/11/2007 - 19:23 por xavi | Informe spam
Hola al grupo,

Tengo un ordenador con Windows Vista Ultimate. En el explorador de archivos
me aparecen 2 carpetas llamadas Archivos de Programa. Si utilizo el símbolo
del sistema y hago un dir c: /ad, me aparece un directorio llamado Archivos
de Programa y otro llamado Program Files.

Eso no tendria nada de especial si no fuera que necesito recuperar la ruta a
una base de datos situada en C:\Archivos de Programa

Me explico. En algunos ejemplos desarrollados en Access utilizamos la base
de datos Neptuno que se instala en C:\Archivos de Programa\Microsoft
Office\Office\Samples\. Para no enviar las tablas junto con el ejemplo,
estos sólo contienen formularios y, en el primero de ellos se establece una
vinculación con esa base de datos que ya posee (o deberia poseer) el usuario
que descarga el ejemplo.

En función de la versión de Office instalada podemos saber una parte de la
ruta hasta la Neptuno. Las rutas varian entre la versión 2000 y las
posteriores. Pero necesitamos la primera parte: la que nos devuelve el
directorio Archivos de Programa.

Si utilizamos Environ("ProgramFiles") o APIs más 'sofisticadas' siempre
obtenemos C:\Program Files, cuando en realidad la ruta a obtener deberia ser
C:\Archivos de Programa

Hemos encontrado algo llamado SHGetLocalizedName que parece que puede
servirnos pero, lamentablemente, no hemos sabido descifrar la forma de
hacerlo.

¿Alguna sugerencia?

Muchas gracias y perdon por la extensión.


Un saludo

Xavi

http://www.llodax.com
http://www.mvp-access.com/foro

Preguntas similare

Leer las respuestas

#1 Jume
06/11/2007 - 22:28 | Informe spam
si te fijas al hacer el dir, una de esas carpetas (archivos de programa) es
un "junction" que apunta a "program files"

la carpeta "real" es program files, y el junction esta ahi para que los
programas que apunten a "archivos de programa" se instalen igualmente en
program files, aun sin que ellos lo sepan (luego al acceder el programa a
archivos de programa se redireccionara igualmente a program files), dicho de
otro modo, para una aplicacion las dos son la misma

supongo que no te valdra la informacion si quieres andar moviendo la
aplicacion entre vista y xp (en xp no tienes esa redireccion creada), pero
si vas a dejar la aplicacion en vista definitivamente, simplemente prueba a
ver si te funciona correctamente

otra opcion que funciona en casi todos los programas (que usen llamadas del
sistema), es configurar esas tablas para que accedan a traves de la variable
%programfiles%, o sea, en vez de "C:\Archivos de Programa\Microsoft
Office\Office\Samples\", seria "%programfiles%\Microsoft
Office\Office\Samples\", dicha variable se crea al instalarse windows con la
ruta que tiene la carpeta de instalacion de programas, sea "archivos de
programa", "program files", o cualquier otro idioma :-)
Respuesta Responder a este mensaje
#2 xavi
07/11/2007 - 09:33 | Informe spam
Muchas gracias por la respuesta.

Despues de 'investigar' un poco más con algunos compañeros, hemos llegado a
la conclusión siguiente:

Un equipo nuevo con una instalación de Vista 'limpia' sólo genera un
directorio Program Files (que se ve al hacer un dir) pero que aparece en el
explorador de archivos como Archivos de programa. Supongo que el nombre con
el que aparece en el explorador irá relacionado con el paquete de idioma
activo.

En cambio, un equipo actualizado de XP a Vista (mi caso), mantiene un
directorio Archivos de Programa (el que crea XP) y un nuevo directorio
Program Files (que crea Vista y que se muestra como Archivos de programa en
el explorador).

Ahora entiendo porque en mi explorador de archivos me aparecian dos carpetas
Archivos de programa.

Voy a probar lo que me has dicho.


Un saludo

Xavi

http://www.llodax.com
http://www.mvp-access.com/foro




"Jume" escribió en el mensaje de noticias
news:
si te fijas al hacer el dir, una de esas carpetas (archivos de programa)
es un "junction" que apunta a "program files"

la carpeta "real" es program files, y el junction esta ahi para que los
programas que apunten a "archivos de programa" se instalen igualmente en
program files, aun sin que ellos lo sepan (luego al acceder el programa a
archivos de programa se redireccionara igualmente a program files), dicho
de otro modo, para una aplicacion las dos son la misma

supongo que no te valdra la informacion si quieres andar moviendo la
aplicacion entre vista y xp (en xp no tienes esa redireccion creada), pero
si vas a dejar la aplicacion en vista definitivamente, simplemente prueba
a ver si te funciona correctamente

otra opcion que funciona en casi todos los programas (que usen llamadas
del sistema), es configurar esas tablas para que accedan a traves de la
variable %programfiles%, o sea, en vez de "C:\Archivos de
Programa\Microsoft Office\Office\Samples\", seria
"%programfiles%\Microsoft Office\Office\Samples\", dicha variable se crea
al instalarse windows con la ruta que tiene la carpeta de instalacion de
programas, sea "archivos de programa", "program files", o cualquier otro
idioma :-)
Respuesta Responder a este mensaje
#3 Jume
07/11/2007 - 15:55 | Informe spam
si, es cierto, al actualizar desde xp puede quedar ahi la carpeta de
archivos de programa de xp

perdon, supuse que estabas mostrando los archivos ocultos en el explorador y
no que tuvieras 2 carpetas reales, porque con el dir /ad salen los junctions
tambien :-)
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida