更新到VS 2015,Azure 2.7,发布失败'访问路径...被拒绝'

时间:2015-07-23 20:54:51

标签: c# visual-studio azure azure-web-roles azure-cloud-services

我有一个有三个工作角色的云服务项目。以前(VS 2013,Azure 2.5)一切都很好。当VS 2015可用时,我将其安装在干净的VM上,然后安装Azure 2.7。我提升了我的旧解决方案,我可以在本地构建和运行。我可以构建云服务项目。但是当我尝试发布或打包时,我收到以下错误,并且构建失败。

错误:

  

访问路径   'C:\用户[用户名] \应用程序数据\本地\ TEMP \ 3xhd2e4m.wlw \角色[角色名] \基\ 86 \ msshrtmi.dll'   被拒绝。 C:\ PROGRAM   Files \ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ Windows Azure   Tools \ 2.7 \ Microsoft.WindowsAzure.targets 3003

当我去Temp时,没有与3xhd2e4m.wlw相对应的目录。

到目前为止,我的解决方案包括:

从解决方案中删除辅助角色并尝试发布 - 对于剩余项目失败并显示相同的错误。 从temp中删除了只读 试图设置一切来构建x64 自从阻止部署和测试以来,我真的需要一些帮助。

3 个答案:

答案 0 :(得分:1)

我有同样的问题。根据另一篇文章(Deploying to Azure: "Access to the path ... msshrtmi.dll is denied")中的答案,该问题与Azure SDK 2.7的问题有关,将在版本2.7.1中解决,应该很快就会发布。

仅当您尝试从32位计算机发布时才会出现此问题。更改为64位计算机应该可以正常工作。

答案 1 :(得分:0)

我无法提供具体的解决方案,因为我尚未采取行动并升级到VS2015,但我想这与Worker Role的Cloud Service的项目文件有关。

因此,我想到了两个选择:

  1. 使用单个样板工作者角色创建一个新的空白工作者角色项目,并检查它是否正确发布/打包。这将确认此功能是否在VS2015中使用Azure SDK 2.6。
  2. 如果(1)有效,请考虑将一个现有的工作者角色项目添加到(1)中的空白工作者角色项目中,然后再次尝试发布/打包过程。
  3. 我发现很难相信微软的人已经尝试过v2.5的升级路径 - > SDK for Worker Roles的v2.6 ...我已经检查了v2.6发行说明,但似乎没有任何与此问题相关的重大更改:https://azure.microsoft.com/en-gb/documentation/articles/azure-sdk-dotnet-release-notes-2_6/

答案 2 :(得分:0)

我刚刚遇到同样的问题,并从中丢失了一些脑细胞。

我的ServiceDefinition.csdef中有一个已定义的目录,其中包含我在我的启动任务的云服务发布期间尝试复制的所有文件,最后我还包含了一些.dll文件。我得到了与此问题的OP相同的错误,经过一段时间后发现我只是无法在我的SourceDirectory路径中包含* .dll文件。我能够很好地包含.cmd文件,但是.dll和.config都没有用。

从我的项目中排除它们还不够好,只是文件在那个目录中的事实足以让VS对我大喊大叫。

现在我只是将所有有问题的文件放在一个zip中,我在我的部署中发送了zip文件,所以这是一个解决方法,但是在我想出这个之前是痛苦的。

希望这会有所帮助..