2016-12-12 8 views
0

Я хочу добавить/редактировать права пользователя удаленно в Hyper-V с помощью C#. Я знаю, что поставщик WMI полезен только для получения информации от Hyper-V, но мне нужно некоторое решение для записи данных в Hyper-V. Есть ли способы решить мою проблему?Как изменить права пользователя на Hyper-V VM с помощью C#

+0

FWIW есть библиотека с открытым исходным кодом, доступная для автоматизации Hyper-V из .NET, которая обертывает вызовы WMI для вас: http://hypervlib.codeplex.com/ – Dai

+0

@Dai Я видел этот проект раньше, но функциональность эта библиотека слишком бедна. Всего пару действий. Но тем не менее спасибо. – Nick

ответ

1

Если вы не хотите полагаться на сторонние или альфа-библиотеки, есть один из способов участия C#: hyper v имеет очень хороший набор команд PowerShell. Просто создайте файл сценария powershell с параметром и запустите этот скрипт непосредственно из C#. Это должно быть простое решение с полной поддержкой Microsoft. Команда, которую вы можете использовать будет

Grant-VMConnectAccess 

См Microsoft documentation

Вы можете вызвать Powershell скрипт из C# или включать в себя функции C# в подлиннике. Хорошим примером для обоих способов можно найти here

Забегая C# функции от PS

Add-Type -TypeDefinition $CalcInstance 
    $CalcInstance = New-Object -TypeName Calc 
    $CalcInstance.Add(20,30) 

Построение объекта PS скрипт в C#

var powerShell = PowerShell.Create().AddScript(someScript); 

Конечно это работает только в зависимости от вашей цели сценарий - powershell должен быть установлен на машинах, на которых запущено ваше приложение C# позже.

+0

Спасибо, я попробую! – Nick