Вопрос по программированию Hyper-V/WMI
Вопрос
Я просмотрел несколько объектов в пространстве имен «root\virtualization», но мне не удалось найти, где Hyper-V хранит путь к файлу конфигурации для данной виртуальной машины.Мне нужно получить этот путь к файлу программно или, по крайней мере, подойдет только домашний путь данной виртуальной машины.В каком объекте и поле WMI хранится путь к данной виртуальной машине (подсказка, что это не Msvm_ComputerSystem)?
Решение
Получите свойство DefaultExternalDataRoot Msvm_VirtualSystemManagementServiceSettingData, чтобы получить корень виртуальной машины, и добавьте свойство Name Msvm_ComputerSystem (guid) и ".xml".Даже если виртуальная машина создана не в расположении по умолчанию, вы увидите символическую ссылку в корневом каталоге внешних данных по умолчанию, ссылающуюся на файл конфигурации.
Другие советы
Это не совсем так.В WSS2008R2
, при изменении корня данных виртуальной машины по умолчанию в корень системных данных ничего не записывается.Чтобы найти корень данных одной виртуальной машины, вам нужно заглянуть в Msvm_VirtualSystemGlobalSettingData
, искать SystemName
недвижимость, соответствующая вашему VM GUID
и заглянуть ExternalDataRoot
и SnapshotDataRoot
свойства, чтобы увидеть папки, связанные с виртуальной машиной.