发布时,此错误“该进程无法访问该文件,因为它正在被另一个进程(550)使用”与我这边的文件有关吗?

问题描述 投票:0回答:1

我有一个 C# 应用程序,正在从 Visual Studio 发布到我的托管提供商,发布后出现错误:

Unable to add '###.dll' to the Web site.  The process cannot access the file because it is being used by another process (550).

这是否表明文件正在我端(客户端)使用,或者文件正在远程服务器上使用并且不能被覆盖?如果我使用 ProcessMonitor,我无法看到 DLL 是如何被其他任何东西使用的。

因此,如果这是服务器上的问题,我肯定仍然可以发布我的文件,尽管它们正在使用,这可能会导致登录的用户使用时出现问题,但替代方法是什么,然后等待用户注销,然后快速发布。我确信当用户登录并使用该网站时我之前就能够发布。

c# .net asp.net-mvc asp.net-core publish
1个回答
0
投票

在服务器端重命名 DLL,而不更改文件夹结构中的文件位置,并将新 DLL 移动到服务器上的同一文件夹中

这将使文件的句柄保持有效和工作,以便现有用户仍然能够正确访问该文件,并且新实例(或新句柄)将转到您刚刚发布的新 DLL 文件。

© www.soinside.com 2019 - 2024. All rights reserved.