JeffreySu / WeiXinMPSDK

微信全平台 .NET SDK, Senparc.Weixin for C#,支持 .NET Framework 及 .NET Core、.NET 8.0。已支持微信公众号、小程序、小游戏、微信支付、企业微信/企业号、开放平台、JSSDK、微信周边等全平台。 WeChat SDK for C#.
https://weixin.senparc.com
Apache License 2.0
8.43k stars 4.35k forks source link

Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll拒绝访问 #289

Closed thisXYH closed 7 years ago

thisXYH commented 7 years ago

Senparc.Weixin.Open.dll nuget 下来的这个 dot....dll 依赖项在vs运行的时候没问题, 部署的时候就拒绝访问

JeffreySu commented 7 years ago

@lishewen 你有碰到过这个问题吗?

lishewen commented 7 years ago

有,这个我当时的情况是IIS应用程序池占用着DLL,导致部署的时候拒绝访问,先把IIS应用程序池停掉,再部署就可以了。 另外补充下 Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll 现在也负责cshtml展示时候的动态编译 就是说网站如果一直有人在访问的话就会一直占用着的

lishewen commented 7 years ago

我提供下我们TFS自动部署的Powershell脚本,可以参考一下

Set-ExecutionPolicy unrestricted -Scope CurrentUser -Force
function Extract-Zip
{
    param([string]$zipfilename, [string] $destination)

    if(test-path($zipfilename))
    {   
        $shellApplication = new-object -com shell.application
        $zipPackage = $shellApplication.NameSpace($zipfilename)
        $destinationFolder = $shellApplication.NameSpace($destination)
        $destinationFolder.CopyHere($zipPackage.Items(), 0x10)
    }
}
appcmd stop apppool "qiye"
# extract-zip C:\Web\tfs\webdeploy1.zip C:\Web\qy
7z x "C:\Web\tfs\webdeploy1.zip" -y -aoa -o"C:\Web\qy"
appcmd start apppool "qiye"
thisXYH commented 7 years ago

好的 谢谢

John0King commented 7 years ago

@lishewen 这个appcmd stop appPool 对远程管用么(网络路径)?