Powershell无法通过wcf查看变量

时间:2016-02-08 10:03:26

标签: c# wcf powershell azure powershell-v2.0

我有一个powershell脚本,可以创建一个azure vm并在服务器上安装Microsoft Dynamics Nav等等。脚本设置了一堆变量然后调用下标。

我可以通过管道从C#调用这个脚本,没有问题。虚拟机被创建和所有东西。

但是如果我创建一个WCF客户端和服务并且服务创建管道并执行脚本,则存在一个主要问题。

不知何故,下标和知道所有变量。

简而言之:如果呼叫直接来自控制台程序,我的脚本如何运作完美,但如果呼叫是通过wcf进行的话,那么该怎么办?

Ps:这不是关于权利的问题,因为wcf服务是IIS托管的,并在管理员帐户下运行。

这就是我在wcf和直接项目中调用脚本的方式。< / p>

        string path = "absolute path to script.ps1"
        Runspace runSpace = RunspaceFactory.CreateRunspace();
        runSpace.Open();
        try
        {
            RunspaceInvoke runSpaceInvoker = new RunspaceInvoke(runSpace);
            runSpaceInvoker.Invoke("Set-ExecutionPolicy Unrestricted");
            Pipeline pipeLine = runSpace.CreatePipeline();

            Command myCommand = new Command(path);
            param = new CommandParameter("some value","some value")
            myCommand.Parameters.Add(param);
            pipeLine.Commands.Add(myCommand);

            var results = pipeLine.Invoke();                
            runSpace.Close();
            return true;
        }
        catch (Exception)
        {
            runSpace.Close();
            return false;
        }

0 个答案:

没有答案