VS.Net中程序集的Debug版本和Release版本的区别

VS 批量更新程序集版本号,及解密 更改程序集的版本号,批量更改。解密加密后的程序。 立即下载

转载地址:http://blog.sina.com.cn/s/blog_7d283bbb0101bi4i.html


1.关于bin 目录和obj 目录
Bin 目录用来保存项目生成后程序集,它有Debug 和Release 两个版本,分别对应的文件夹为bin/Debug 和bin/Release ,这个文件夹是默认的输出路径,我们可以通过:项目属性—> 配置属性—> 输出路径来修改。
obj 目录是用来保存 每个模块的编译结果,在.NET 中,编译是分模块进行的,编译整个完成后会合并为一个.DLL 或.EXE 保存到bin 目录下。因为每次编译时默认都是采用增量编译,即只重新编译改变了的模块,obj 保存每个模块的编译结果,用来加快编译速度。是否采用增量编译,可以通过:项目属性—> 配置属性—> 高级—> 增量编译来设置。

2.“是否复制到本地”的设置问题
在添加引用时,.NET 会记录添加的引用绝对路径,这些设置保存在“每用户”文件中,(Solution.csproj.user ),可以通过记事本打开查看。也可以在:项目属性—> 通用属性—> 引用路径里面查看。如果设置复制到本地为true ,在生成项目时会自动拷贝该DLL 到项目生成文件夹中(bin 目录) ,否则不会拷贝。在生成项目时,对所添加的引用的是绝对路径,而在运行时程序集默认只在当前所在的路径下去找。要修改引用的路径,必须通过编程的方法去实现。使用 References 对象。


3.Debug和Release的区别
Debug:调试版本,包含调试信息,所以容量比Release大很多,并且不进行任何优化(优化会使调试复杂化,因为源代码和生成的指令间关系会更复杂),便于程序员调试。Debug模式下生成两个文件,除了.exe或.dll文件外,还有一个.pdb文件,该文件记录了代码中断点等调试信息


Release:发布版本,不对源代码进行调试,编译时对应用程序的速度进行优化,使得程序在代码大小和运行速度上都是最优的。(调试信息可在单独的PDB文件中生成)。Release模式下生成两个文件.exe或.dll文件


关于Debug和Release,MSDN里面是这么说的: 
Visual Studio 项目对程序的发布和调试版本分别有单独的配置。顾名思义,生成调试版本的目的是用于调试,而生成发布版本的目的是用于版本的最终分发。 
如果在 Visual Studio 中创建程序,Visual Studio 将自动创建这些配置并设置适当的默认选项和其他设置。在默认设置下:
程序的“调试”配置用全部符号调试信息编译,不进行优化。(优化会使调试复杂化,因为源代码和生成的指令间的关系更加复杂。) 
程序的“发布”配置被完全优化,不包含任何符号调试信息。调试信息可在单独的 PDB 文件中生成。


当在程序集的属性页中选Debug模式时,设置如下: 

当选择Release模式时,设置如下: 

两者的不同点如下: 

项目 Debug Release
条件编译常数 Debug;Trace Trace
优化代码 False True
输出路径 bin\Debug bin\Release
生成调试信息 True False

Debug模式下生成的程序集为调试版本,未经优化;在bin\debug\目录中有两个文件,除了要生成的.exe或.dll文件外,还有个.pdb文件,这个.pdb文件中就记录了代码中的断点等调试信息;Release模式下不包含调试信息,并对代码进行了优化,\bin\release\目录下只有一个.exe或.dll文件。

注意若要更改项目的生成模式,不能只从项目属性页上点“配置”下拉框更改,那样不起作用,必须点右上角的“配置管理器”按钮才能更改。

3. NVIDIA GPU Xid 常见错误码全解析、故障定位与标准化处理方案 摘要: Xid是NVIDIA显卡驱动记录的硬件/软件异常日志,通过dmesg等工具可获取,包含PCI总线、GPU编号、故障码等信息,是诊断显卡问题的核心依据。Xid故障分为四类:应用程序类(如代码错误,Xid13/31)、显存ECC硬件类(如显存损坏,Xid48/63)、链路/供电温控类(如PCIe故障,Xid74/79)和GSP固件类(如静电干扰,Xid119/154)。排查流程包括日志采集、软件修复(如重启进程、升级驱动)、硬件检查(如PCIe链路状态)及断电复位(针对GSP故障)。预防措施包括监控EC 阅读详情

相关推荐

从零搭建IoT数据中台:STM32+WebSocket实现边缘设备与Web端实时双向通信

本文详细介绍了如何从零搭建基于STM32和WebSocket协议的IoT数据中台,实现边缘设备与Web端的实时双向通信。通过硬件选型、协议设计、服务器搭建及安全优化,提供了一套低延迟、高并发的企业级解决方案,适用于智能农业和工业监控等场景。

tea88的博客 750

程序集版本号与文件版本号的区别

程序集版本号  在.net框架中和CLR运行时钟引用 如使用程序集的强命名时 名称,公钥,语言区域,程序集版本号win32文件版本号 专门显示在windows文件系统中,每次发布程序集时,如果是每天更新,应该只更新 文件版本号,不要频繁更新程序集版本号 ,防止其他引用的人每天要修改,避免出错应该尽量只更新文件版本号。  这是 微软开发者的初衷。...

weixin_33967071的博客 937

深入剖析STM32F103 I2C总线死锁问题及高效应对策略

本文深入剖析了STM32F103硬件I2C总线在轮询模式下发生死锁的根本原因,即硬件状态机的预取机制与软件响应速度不匹配。文章提供了高效的解决方案,包括在轮询模式下提前发送NACK/STOP信号、降低总线速度,以及治本的中断与DMA应用策略,帮助开发者根据项目需求选择最合适的方案,彻底解决这一经典硬件缺陷问题。

weixin_29184371的博客 206

VS2017程序集版本号自动增加

一、修改程序集文件AssemblyInfo.cs,将[assembly: AssemblyVersion("1.0.0.0")]修改为[assembly: AssemblyVersion("1.0.*")],修改后报如下错误: “将文本表示为UTF-16代码单元的序列。要浏览此类型的.NET Framework源代码,请参阅参考源。 指定的版本字符串包含通配符,这些通配符与确定性不兼容。从版本...

zhaijingkui的博客 2839

pgsql:还原数据库后出现重复序列导致“more than one owned sequence found“报错问题的解决

pgsql数据库通过备份数据库文件进行还原时,如果表中有自增序列,还原后可能会出现重复的序列,此时若向表中插入新行时会出现“more than one owned sequence found”的报错提示。还原数据库时把序列取消勾选,选择不还原序列。因为还原表的同时,会自动将自增序列还原上去,此处勾选会导致数据库重复创建序列。点击还原数据库完毕后,可以看到序列仅有一个,没有出现重复序列。但此时的序列当前值是从1开始的,需要重置。点击菜单“其它”-》“序列”,可以看到有多个重复序列。

奋斗鱼 1043

Android中的Service:Binder,Messenger,AIDL(2)

前言前面一篇博文介绍了关于Service的一些基本知识,包括service是什么,怎么创建一个service,创建了一个service之后如何启动它等等。在这一篇博文里有一些需要前一篇铺垫的东西,建议没有看过前一篇博文的同学先去看一下前一篇: Android中的Service:默默的奉献者 (1) 。但是在前一篇博文中也有一些遗漏的东西——主要是关于bindService()这一块的具体细节。由于这

lypeer的专栏 5万+

.NET中Debug模式与Release模式差别

Debug里的PDB是full,保存着调试和项目状态信息、有断言、堆栈检查等代码。Release 里的PDB是pdb-only,基本上:出什么错了+错误在哪行。 因为很多人把PDB理解成:调试文件、ProgramDebugDatabase、会泄露代码机密,所以想将其删除,那只要在VS的 项目-->生成-->高级-->调试信息-->None便可 转载于:...

weixin_34288121的博客 289

[模型部署]-[LLM]昇腾部署Qwen3-Coder-30B-A3B-Instruct

摘要:本文介绍了在Ascend NPU上部署Qwen3-Coder-30B-A3B-Instruct大模型的实践过程。通过vLLM-Ascend框架,详细说明了环境准备(CANN 8.1、PyTorch-NPU 2.5.1等)、模型下载、容器启动及服务部署步骤,包括vLLM服务的启动参数配置和接口测试方法。测试结果显示在当前2卡910B3配置下性能表现仅为8token/s(1并发),并指出流式调用时存在无法输出usage信息的问题。该方案为Ascend平台私有化部署大模型推理服务提供了参考实现。

1672

Visual Studio 中 Debug 和 Release 的区别;生成、清理项目、调试、开始执行等之间的区别

Visual Studio 中 Debug 和 Release 的区别;生成、清理项目、调试、开始执行等之间的区别

m0_51913750的博客 1万+

2026 拉勾网:JA4+指纹绕过 + sign逆向 + 动态城市参数,月采集10万+数据实战

2026年拉勾网反爬技术全面升级,采用JA4+ TLS指纹识别、动态sign签名等多维度防护体系。本文提供工业级爬虫解决方案,通过curl_cffi模拟浏览器指纹、逆向sign加密算法、动态生成城市参数三大核心技术,实现高效稳定的数据采集。系统采用分层架构设计,包含任务调度、签名生成、多线程引擎等模块,单月可获取10万+条招聘数据。重点解析了JA4+指纹识别原理、传统方法的局限性,以及通过HMAC-SHA256算法逆向sign参数的完整过程。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2395

第六部分:VTK进阶(第182章 体素化与隐式建模)

本文系统介绍了基于点云构建有符号距离场(SDF)的核心原理与VTK实现方法。主要内容包括:1)SDF的基本概念与算法原理,通过体素网格隐式表达几何表面;2)关键参数配置指南,如体素分辨率、边界范围和影响半径的选择;3)点云法向估计、SDF计算与等值面提取的完整工作流程;4)常见问题解决方案与性能优化建议。文中提供了详细的C++代码示例,展示从随机点云生成SDF并重建曲面的完整过程,特别强调了法向估计、参数调优和后处理等关键环节。该方法适用于点云表面重建、几何处理等应用场景。

仰望星空的博客 529
上一篇: IDL语言的几个要点回顾
下一篇: 生成、重新生成、清理
大熊随想
博客等级 码龄15年 137粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值