C#에서 Powershell 내에서 SQL 쿼리를 실행하려고합니다. 필자는 ActiveDirectory cmdlet을 사용하여 성공적인 결과를 얻었으며 한 걸음 더 나아가고 싶었습니다. 다음과 같은 형식은 C#으로 실패 액티브 디렉토리와 (과 ISE에서) 작동하는 동안Powershell SQLPS 모듈이 C# 내에서 가져 오지 못함
나의 첫번째 문제는 : 나는 한참 무제한으로 설정 보안을 했어
using (PowerShell pS = PowerShell.Create())
{
pS.AddCommand("import-module");
pS.AddArgument("sqlps");
pS.Invoke();
}
하지만, 오류가 난 점점 m은 다음과 같습니다
CmdletInvocationException이
파일 C 처리되지 않은했다 : \의 Program Files (x86) \ Microsoft SQL Server를 \ 110 개 \ 도구 \ PowerShell을 \ 모듈 \의 이 시스템에서는 스크립트 실행이 비활성화되어 qlps \ Sqlps.ps1을로드 할 수 없습니다. 자세한 내용은 about_Execution_Policies (http://go.microsoft.com/fwlink/?LinkID=135170)를 참조하십시오.
using (PowerShell pS = PowerShell.Create()) { pS.AddScript("Import-Module sqlps"); pS.Invoke(); }
것은 내가 다음 ActiveDirectory에 가져 오기를 시도하는 경우 :이처럼 실행하면 나중에는 "GET-모듈 -all은"전화 모듈의 흔적을 보여줍니다하지만
그러나, 나는 오류를 얻을 모듈을 호출하고 Get-Module을 호출하면 아무 것도 표시되지 않습니다.
여기 무슨 일 이니?
저는 작업 스케줄러와 관련된 문제에 결코 뛰어 들어 본 적이 없습니다. 문제없이 야간에 실행할 스크립트가 많습니다. 그러나 C#에서 실행하기위한 비슷한 솔루션이 있는지 살펴볼 것입니다. SQLPS 가져 오기에 관해서는 필자는 해당 매개 변수를 사용하고 결과에서 차이가 없도록 ('import-module sqlps -cmdlet invoke-sqlcmd') 끌어 오기위한 cmdlet을 지정했습니다. – squid808