运行powershell脚本来自C#程序的行为与直接运行时不同

时间:2015-07-24 08:12:11

标签: c# powershell iis

我已经编写了一个用于创建网站的PowerShell脚本,

当我从powershell命令提示符运行脚本时,它运行完美但是当我通过C#程序运行它有时它不会工作并且有时它可以工作。

和用于创建apppoool的脚本相同。我提到要为4.0版创建apppool但是通过progam创建版本2.0的apppool

我在IIS 7.5中托管了我的C#Web应用程序...我认为这可能是IIS安全性的问题

脚本:

def join
    respond_to do |format|
      if @challenge.update(challenge_params,:user_id => current_user.id)
        format.html { redirect_to @challenge, notice: 'You have joined.' }
        format.json { render :show, status: :ok, location: @challenge }
      else
        format.html { render :edit }
        format.json { render json: @challenge.errors, status: :unprocessable_entity }
      end
    end
  end

C#代码

Import-Module WebAdministration -Force;

$siteName=$args[0];
$AppPoolName=$args[1];
$PortNumber=$args[2];
$PhysicalPath=$args[3];



New-Item IIS:\Sites\$siteName -physicalPath $PhysicalPath$siteName -bindings @{protocol="http";bindingInformation=":"+$PortNumber+":"}
Set-ItemProperty IIS:\Sites\$siteName -Name applicationPool -Value $AppPoolName

由于

1 个答案:

答案 0 :(得分:0)

如果您正在使用的端口要绑定到新网站,那么它就不会创建新网站