• .NetCore程序寄托于IIS部署时提示:进程无法访问该文件,因为它正在被其他进程使用。


    阅文时长 | 0.55分钟 字数统计 | 884.8字符
    主要内容 | 1、引言&背景 2、解决详细步骤 3、声明与参考资料
    『.NetCore程序寄托于IIS部署时提示:进程无法访问该文件,因为它正在被其他进程使用。』
    编写人 | SCscHero 编写时间 | 2022/2/17 PM9:42
    文章类型 | 系列 完成度 | 已完成
    座右铭 每一个伟大的事业,都有一个微不足道的开始。

    一、引言&背景   完成度:100%

    a) 应对问题

    .NetCore程序寄托于IIS部署时提示:进程无法访问该文件,因为它正在被其他进程使用。如图,博主是英文版的WindowsServer系统,提示:The process cannot access the file because it is being used by another process.

    b) 环境说明

    • .NetCore2.2开发框架
    • Internet Information Services(Version 8.5.9600.16384)
    • Windows Server 2012 R2

    二、解决详细步骤   完成度:100%

    a) 常规步骤

    先说常规的步骤,能解决大多数时候的问题:一般报文件使用于另外的进程,我们第一反应就是停服务、停App pool中的App。PS:如果不想通过停服务来部署,那么可以通过设置web.config中的aspNetCore的hostingModel属性,如果值是InProcess则为进程内托管,修改为"OutOfProcess"则为进程外托管,可以尝试热部署。

    <aspNetCore processPath="dotnet" arguments=".\AppName.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="InProcess"/>
    

    更多参数可参阅三章节的官方文档。

    b) 其他Case

    但如果常规步骤无法解决此问题,即服务停了,应用程序池应用也关了,还是报文件占用,且不知道是什么进程占用了,又没法重启服务器。那么以下步骤可能有用:

    1. 备份一下旧文件,然后快捷键DELETE删除。这时候Windows(英文版)会提示The action can't be completed because the file is open in [XXXXX]。比如如图,博主的dll文件就被进程IIS Worker Process使用了。
    1. 那么知道了是被什么进程使用了,我们则到任务管理器查看进程List,如图:博主的情况比较复杂,因为服务器上跑了多个IIS服务,且是多用户的。因此需要查看各个用户的进程,以及判断多个IIS Worker Process中哪个是我们部署服务的进程。这里教大家一招:默认的任务管理器是不会展示命令行(Command line)的列的,需要手动右击Title调出来。通过命令行-ap参数后的AppName,我们可以知道是哪个进程锁住了。然后End Task即可。

    三、声明与参考资料   完成度:100%

    微软官方文档:关于web.config的配置文件说明

    原创博文,未经许可请勿转载。

    如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。

  • 相关阅读:
    java 在线网络考试系统源码 springboot mybaits vue.js 前后分离跨域
    springboot 整合flowable 项目源码 mybiats vue.js 前后分离 跨域
    flowable Springboot vue.js 前后分离 跨域 有代码生成器 工作流
    Flowable 工作流 Springboot vue.js 前后分离 跨域 有代码生成器
    java 企业 网站源码 后台 springmvc SSM 前台 静态化 代码生成器
    java 进销存 商户管理 系统 管理 库存管理 销售报表springmvc SSM项目
    基于FPGA的电子计算器设计(中)
    基于FPGA的电子计算器设计(上)
    FPGA零基础学习:SPI 协议驱动设计
    Signal tap 逻辑分析仪使用教程
  • 原文地址:https://www.cnblogs.com/SCscHero/p/15907794.html
Copyright © 2020-2023  润新知