IIS 笔记
禁用调试
如果安装IIS的机器上也安装了开发环境,可能会在发生异常时,被Just-IN-Time实时调试捕捉,弹窗并等待处理的情况,这种情况下IIS会被无限期停滞在等待处理的状态下,就像是在Vs下运行Debug一样。
解决方法设置该站点Web.config
中相应配置
<configuration>
<system.web>
<compilation debug="false" targetFramework="4.8" />
</system.web>
</configuration>
修改的方式也有两种:
- 直接修改站点目录下
Web.config
文件,该文件可能从开发环境就有,并随发布后复制而来 - 通过 Internet Information Services Manager,修改 IIS-ASP.NET-.NET Compilation-Behavior-Debug,点击
Apply
生效
Com组件异常
System.Runtime.InteropServices.COMException (0x80040154): Retrieving the COM class factory for component with CLSID {19F37CF2-C7C2-11D0-8714-0020AFEE2C2A} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
asp.net mvc framework 4.8项目,引用com组件waters empower toolkit 2.3 object library
,VS2022开发环境调试时正常,组件可实例化、可运行组件方法如下:
using MillenniumToolkit;
var project = new Project();
project.fetch();
发布部署到本机IIS运行,调用接口,引发System.Runtime.InteropServices.COMException
,断点跟踪引发异常的语句在实例化
var project = new Project();
处理方法:
如果服务器是64位应用,打开IIS应用程序池高级设置,允许运行32位应用
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构