Simular unidades en Vista (el comando subst no va)

En estos días he tenido que repetir ciertas pruebas que realicé hace unos meses para comprobar que nuestras aplicaciones cliente/servidor VB6 y Oracle funcionarán en Windows Vista (32 y 64 bits).

Los puestos de las pruebas no debían conectarse a la red de la empresa, por motivos de seguridad y una de las pruebas consistía en probar aplicaciones ya existentes, que se instalaban mediante unos kits preparados para instalarse desde varias unidades Netware.

En un principio, no parecía que esto fuera  ser un problema, y ya había realizado instalaciones parecidas en puestos XP sin Netware copiando mediante CD los kits de instalación al disco duro de los puestos y emulando las unidades de red T: y O: que utilizan los kits de instalación mediante el comando subst.

Pues bien, en Vista no había manera de que me funcionaran los kits de instalación y no podía probar las aplicaciones que quería.

El proceso que hacía era:

  • Lanzaba el comando subst desde una ventana de comandos.
  • Podía ver las nuevas unidades con el Explorador de Windows.
  • Desde el explorador recorría el árbol de carpetas hasta aquélla en la que estaba el programa de instalación y lo lanzaba como Administrador.
  • Obtenía un mensaje de error de que el camino de ese programa no era correcto.

Al final, buscando este problema en Internet, encontré una solución: quitar el UAC.

Así pues, quitando el UAC, y realizando los mismos pasos el proceso de instalación funcionaba e instalaba todos los componentes de la aplicación.

Investigando un poco más pude ver que el problema no era exactamente si estaba activado el UAC o no, sino que al estar activado el UAC, cuando lanzaba la subst para emular las unidades de red que el proceso de instalación necesitaba, lanzaba la subst sin derechos de administrador, por lo que este comando me mostraba en el Explorador las unidades emuladas, pero cuando ejecutaba programas sobre ellas era como si no existieran

Technorati Tags:

.

Si abro una ventana de comandos lanzando el cmd.exe con derechos de administrador y desde ella lanzo la subst para asignar las unidades necesarias, la instalación funcionará aunque el UAC esté activado.

Así que, finalmente, pude instalar las aplicaciones en Windows Vista y comprobar que funcionaban sin problemas en él y que también funcionaban sus kit de instalación.

4 comentarios en “Simular unidades en Vista (el comando subst no va)”

  1. UAC no esta relacionado. Lo que estás haciendo es ejecutar un comando bajo un usuario e intentar verlo bajo otro usuario. UAC te cambia del usuario normal al administrador. Por eso le ves la relación.

  2. Efectivamente. Aunque de manera indirecta el desactivar el UAC soluciona el problema, la causa no es el propio UAC, sino el propio funcionamiento del subst, como quería decir.
    Si una vez conectado lanzas el subst y después el programa desde la unidad emulada (que ves en el explorador) tampoco funciona y, las tres ejecuciones en principio deben ser del mismo usuario.

  3. Parece que vuestro problema, ya solucionado, podría guardar relación con el que tengo yo:
    La instalación de un terminal cliente de una aplicación de gestión implica que al ejecutar INSTALADOR.EXE desde la unidad M: mapeada a \SERVIDORINSTALACION desde Windows Vista se lance como M:INSTALADOR.EXE y no como \SERVIDORINSTALACIONINSTALADOR.EXE. Windows Vista siempre lo interpreta de esta última forma y no hay manera de instalar el terminal cliente. ¿Tenéis idea de como solucionar esto? ¿Guarda relación con lo que habéis expuesto?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *