¿Por qué el Explorador de archivos no muestra mis unidades asignadas?

¿Por qué el Explorador de archivos no muestra mis unidades asignadas?

Estoy usando Windows 10 Pro de 64 bits.

Mi aplicación (que se ejecutó como administrador) asigna una carpeta de la unidad D a una unidad de red Z usando la API de red de Windows wnetaddconnection2().

Cuando abrí el Explorador de archivos, no pude ver la unidad Z. Sin embargo, cuando abrí otras aplicaciones (por ejemplo, Visual Studio) en modo Administrador y busco la carpeta Esta PC, puedo ver la unidad Z en Ubicación de red.

¿Por qué y cómo resolver este problema de que las unidades asignadas no aparecen inmediatamente después de ser asignadas?


Este problema no sucede

  • en Windows 7 O
  • cuando mi aplicación no se ejecuta como administrador O
  • después de reiniciar explorer.exe O
  • en el cuadro de diálogo Abrir archivo en otras aplicaciones (como Word, Paint, Visual Studio, etc.)

Nota: Tengo EnabledLinkedConnections configurado en 1, EnableLUA configurado en 1.

Solución probada

Una solución es buscar en un programa en Herramientas administrativas llamado Política de seguridad local y deshabilitar todas las políticas relacionadas con UAC en Configuración de seguridad > Políticas locales > Opciones de seguridad (ubicadas entre las 15 políticas inferiores de la lista) excepto UAC: Comportamiento... , UAC:Cambiar... y UAC:Virtualizar...

Sin embargo, no quiero seguir ese camino debido a varios problemas que ocurren, como no poder abrir aplicaciones de Windows 10 como Calculadora, etc.

Respuesta1

Debido a la UAC, Shell se ejecuta con permisos de usuario estándar, no puede ver las unidades asignadas que se configuraron desde su aplicación ejecutándose con derechos de administrador.

Hay unsolución alternativa llamada habilitar la opciónEnableLinkedConnections:

  • Haga clic en Inicio, escriba regedit en el cuadro Inicio programas y archivos y luego presione ENTRAR.
  • Localice y luego haga clic derecho en la subclave del registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System.
  • Seleccione Nuevo y luego haga clic en Valor DWORD.
  • Escriba EnableLinkedConnectionsy luego presione ENTRAR.
  • Haga clic derecho EnableLinkedConnectionsy luego haga clic en Modify.
  • En el cuadro Información del valor, escriba 1 y luego haga clic en Aceptar.
  • Salga del Editor del Registro y luego restart the computer.

O tuPuedo aplicar mi truco para ejecutar Explorer como administradorpara ver también las unidades asignadas.

información relacionada