C# 无法调用此函数,因为当前主机未实现它#
我知道这是在这个板上,但我是新的,并没有什么真正阻止我,所以我希望有人可以提供一些见解。我得到以下错误: 无法调用此函数,因为当前主机未实现它 这是我的密码C# 无法调用此函数,因为当前主机未实现它#,c#,powershell,C#,Powershell,我知道这是在这个板上,但我是新的,并没有什么真正阻止我,所以我希望有人可以提供一些见解。我得到以下错误: 无法调用此函数,因为当前主机未实现它 这是我的密码 public static void runPowershellScript(string scriptName) { RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create(); Runspace
public static void runPowershellScript(string scriptName)
{
RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();
Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
runspace.Open();
RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);
scriptInvoker.Invoke("Set-ExecutionPolicy Unrestricted");
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.Add(scriptName);
pipeline.Invoke();
}
我传递的变量是我的脚本名,它没有问题。您可能正在使用某些特定于主机的函数,这意味着任何承载PowerShell引擎的进程(例如PowerShell.exe、PowerShell_ise.exe、您的c#app)都必须为它们提供实现
通常,这些功能包括*-主机功能(写入主机、输出主机、读取主机)、转录本功能(启动转录本、停止转录本)和其他一些功能。您的意思是您试图在其上运行PowerShell脚本的服务器上没有安装PowerShell吗?或者不允许您设置执行策略?现在还不清楚您的问题是什么。无论如何,向shell发送命令并不十分安全。我不知道您的“当前主机”是谁,但如果他们几乎不可能安装您所需的,您将不得不以另一种方式进行安装。这里的主机指的是“托管”powershell引擎的进程,而不是服务器或拥有服务器的公司。