¿Puede un programa detectar que la unidad en la que se está ejecutando es un VHD/VHDX montado localmente pero almacenado en la red?

¿Puede un programa detectar que la unidad en la que se está ejecutando es un VHD/VHDX montado localmente pero almacenado en la red?

Todo esto está en el contexto de Windows 10, tanto del cliente como del servidor.

Fondo:Algunos programas bloquean la instalación/ejecución en carpetas de red compartidas. No me refiero a errores debidos a compartir/permisos de archivos o a la necesidad de habilitar políticas en GPO/registro; Quiero decir que directamente le dicen que las instalaciones de red "no funcionarán" y luego las bloquean, incluso cuando usan una unidad de red asignada (es decir, "\SERVER\DriveP" asignada a "Z:\" en la máquina local).

Una solución alternativa que encontré es crear un VHD/VHDX en el recurso compartido de red y luego usar la Administración de discos en la máquina local para montar ese VHD como una unidad local. Por ejemplo, creo un archivo VHD "VirtualDrive.vhd" en "\SERVER\DriveP", luego adjunto ese VHD a "D:\" en la PC local. Esto parece ser 100% transparente y funcionalmente idéntico a una unidad conectada físicamente a la PC; Los programas que normalmente bloquean (o no funcionan con) instalaciones de red asignadas, funcionan con este método.

En breve:Tengo programas instalados en una unidad de red mediante el uso de un VHD montado localmente que está almacenado físicamente en una unidad de red.

Pregunta:¿Hay alguna forma de que un programa detecte que la unidad en la que se está ejecutando ("D:\" en este ejemplo) es en realidad un VHD almacenado en una computadora remota pero montado localmente, en lugar de una unidad conectada físicamente a la PC?

Pensé que esta podría ser una mejor comunidad para preguntar que serverfault.

Respuesta1

Durante un período de tiempo suficientemente largo podría determinarse indirectamente. No es 100% fiable y lleva mucho tiempo, pero esta información podría filtrarse desde el mundo real.

Plantee un programa que se ejecute continuamente, realice muchas solicitudes de disco y conozca la carga en el sistema donde se está ejecutando. Al considerar los tiempos de servicio para las solicitudes, eventualmente debe concluir que algunas respuestas demoran tanto (debido al tráfico de la red, congestión, lo que sea) cuando el sistema no está cargado que el disco no puede ser un disco duro real conectado a una placa base.

información relacionada