Термин 'connect-QADService' не распознается как имя командлета внутри функции C #.

Может кто-нибудь, пожалуйста, помогите понять, почему следующий код внутри функции Csharp

    Runspace runspace = RunspaceFactory.CreateRunspace();
    runspace.Open();
    Pipeline pipe = runspace.CreatePipeline();
    Command connectToActDir = new Command("connect-QADService");
    connectToActDir.Parameters.Add("Service", "'ip:port'");
    connectToActDir.Parameters.Add("ConnectionAccount", "'user.local\administrator'");
    connectToActDir.Parameters.Add("ConnectionPassword", "'password'");
    pipe.Commands.Add(connectToActDir);
    pipe.Invoke();

вызывает следующую ошибку

Термин «connect-QADService» не распознается как имя командлета, функции, файла сценария или работающей программы. Проверьте написание имени или, если был включен путь, убедитесь, что он правильный, и повторите попытку.

при установке командлетов ActiveRoles и успешном выполнении эквивалентной команды в оболочке Power. Я пропускаю какие-то библиотеки DLL в ссылках на проекты? Спасибо


person rok    schedule 25.08.2013    source источник


Ответы (1)


Командлеты Quest ActiveRoles по умолчанию не загружаются в сеанс PowerShell, поскольку они не являются частью PowerShell.

PowerShell 3 автоматически загрузит модули при необходимости. Я не знаю, верно ли это при использовании RunSpace, поскольку я никогда не использовал PowerShell таким образом.

Вы загружаете оснастку или модуль Quest в свой профиль PowerShell? Вам нужно будет сделать эквивалент в вашем коде C #.

person alroc    schedule 26.08.2013