Скрипт Powershell в C # для присоединения к домену Windows - PullRequest
0 голосов
/ 30 апреля 2019

Я использую эту функцию ниже для создания сценария powershell

public static void joinDomain()
{
    string path = @"C:\Windows\Temp\Test.ps1";
    if(!File.Exists(path))
    {
        using (StreamWriter sw = File.CreateText(path))
        {
            sw.WriteLine("add-computer –domainname ad.contoso.com -Credential AD\adminuser -restart –force");
        }
    }
}

После успешного создания сценария я запускаю этот сценарий, используя следующий код:

Classes.Functions.joinDomain();

string strCmdText = @"C:\Windows\Temp\Test.ps1";

System.Diagnostics.Process.Start("C:\\windows\\system32\\windowspowershell\\v1.0\\powershell.exe ", strCmdText);

Если я запускаю сценарий из Powershell ISEон запрашивает пароль, поэтому скрипт работает.

Даже вызов его работает, но я только что получил синюю командную строку powershell, а затем он рассылает его, не спрашивает пароль, и я не знаю, почему.

Любые идеибыть оцененным?

1 Ответ

0 голосов
/ 30 апреля 2019

Найденное решение:

Это было вызвано политикой ограничения окон для неподписанных сценариев.

Решение здесь:

https://github.com/eapowertools/ReactivateUsers/wiki/Changing-Execution-Signing-Policy-in-Powershell

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...