ฉันต้องการเรียกใช้สคริปต์ PowerShell จากภายใน C # สคริปต์ต้องการอาร์กิวเมนต์บรรทัดคำสั่ง
นี่คือสิ่งที่ฉันได้ทำไปแล้ว:
RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();
Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
runspace.Open();
RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.Add(scriptFile);
// Execute PowerShell script
results = pipeline.Invoke();
scriptFile มีบางอย่างเช่น "C: \ Program Files \ MyProgram \ Whatever.ps1"
สคริปต์ใช้อาร์กิวเมนต์บรรทัดคำสั่งเช่น "-key Value" ในขณะที่ Value อาจเป็นบางอย่างเช่นเส้นทางที่อาจมีช่องว่าง
ฉันไม่ได้ทำงานนี้ ไม่มีใครรู้วิธีส่งอาร์กิวเมนต์บรรทัดคำสั่งไปยังสคริปต์ PowerShell จากภายใน C # และตรวจสอบให้แน่ใจว่าช่องว่างไม่มีปัญหา?
Command myCommand = new Command(scriptfile);
แล้วpipeline.Commands.Add(myCommand);
แก้ปัญหาการหลบหนี