Delphi. Виртуальный жёсткий диск.

Подскажите, как заставить прогу читать виртуальный хард. (пишу на Delphi XE).
Нужно, чтоб программа получила возможность просматривать виртуальный диск как физический, и копировать некоторые файлы с него.
На виртуальном винчестере файловая система NTFS.
Вариант с запуском программы в виртуальной машине не подходит.
Содержимое виртуального диска изменять нельзя, только читать.
Помогите пожалуйста, очень надо!

Самое тупое, что приходит в голову это написать читалку образов дисков, а потом свою читалку NTFS. Ну а если он на работающей виртуалке, то можно попробовать к нему через шары (по smb) обратиться. Да и вроде как в виртуалках есть возможность смонтировать жёсткий для обычного чтения.

Если виртуальный жесткий диск даже не читается штатными средствами, значит проблема в проге что создала этот виртуальный жесткий диск. Он должен монтироваться и его файловая система должна быть видна в проводнике. Ничего не понял, зачем писать прогу ?