《CLR Via C#》Visual Studio编译之后的.pdb文件

在用Visual Studio新建项目之后,进行编译,总会发现.pdb文件:

在CLR Via C#中讲到,.pdb文件是用来调试用的。pdb是Program Database的简写,它能够进行source code和IL之间的映射。

The compiler produces a Program Database (PDB) file only if you specify the /debug(+/full/pdbonly) switch. The PDB file helps the debugger find local variables and map the IL instructions to source code.【这是IL和Source Code之间的映射】 The /debug:full switch tells the JIT compiler that you intend to debug the assembly, and the JIT compiler will track what native code came from each IL instruction【这是IL和native code之间的映射】. This allows you to use the just-in-time debugger feature of Visual Studio to connect a debugger to an already-running process and debug the code easily【/debug:full提供的功能,是不是指“附加到进程”呢?】. Without the /debug:full switch, the JIT compiler does not, by default, track the IL to native code information, which makes the JIT compiler run a little faster and also uses a little less memory. If you start a process with the Visual Studio debugger, it forces the JIT compiler to track the IL to native code information (regardless of the /debug switch) unless you turn off the Suppress JIT Optimization On Module Load (Managed Only) option in Visual Studio.

When you create a new C# project in Visual Studio, the Debug configuration of the project has /optimize-- and /debug:full switches, and the Release configuration has /optimize+ and /debug:pdbonly switches specified.【在Visual Studio中Debug和Release两个选项,对这两个参数的影响】

时间: 2024-12-26 10:31:48

《CLR Via C#》Visual Studio编译之后的.pdb文件的相关文章

cypthon的visual studio编译环境安装

按照教程,如果出现vcvarsall.bat找不到的情况,则需要安装正确版本的visual studio http://docs.cython.org/src/tutorial/cython_tutorial.html python 2.7.x使用的是vs2008,如果没有安装,可以安装vs2008 express版本.下图是查看vs所使用的vs编译器的版本的方法. 可以通过检查环境变量中VS90COMNTOOLS是否存在来确定vs2008 express是否安装好. 下面是配置过程: 先安装v

解决Visual Studio编译错误:在证书存储区中找不到清单签名证书

解决Visual Studio编译错误:在证书存储区中找不到清单签名证书 [1]方法一:右击项目→属性→签名→将<为ClickOnce清单签名(M)>前面的勾去掉. [2]方法二:用记事本打开相应的csproj文件,调整节点值:<SignManifests>true</SignManifests>将true修改为false. [3]方法三:在签名中创建一个新的签名.本方法未测试. 解决Visual Studio编译错误:在证书存储区中找不到清单签名证书,布布扣,bubu

将libvex移植到Visual Studio编译平台下的经验总结

1. 两难 将libvex从Linux移植到Windows,移植工作聚集于Cross-Compiler,而不是预料的Cross-Platform. VC++ Compiler到目前为止只支持C89标准,而这个标准规定,变量必须在代码块(即通过大括号包围起来的代码块)的最前面声明,参考 http://stackoverflow.com/questions/13308944/how-to-simulate-c99-in-visual-studio-for-variables-declaration

Visual Studio 编译项目失败,提示找不到文件

?? 博客地址:http://blog.csdn.net/FoxDave 今天碰到了一个蠢问题,虽然咱们正常情况下是遇不到的,但这确实是个应该注意的地方,所以简单记录一下. Visual Studio 编译项目失败,提示找不到CS文件什么的,但是你的项目里文件明明是存在的,出现这种情况的时候看看你的项目是不是处在了一个比较深的文件夹层次目录里,由于full path太长而导致报出找不到文件的错误. 解决的办法就是把你的项目移动到一个浅的文件目录. 觉得自己太水了--

Gnuradio 学习笔记(1)使用Visual Studio编译gnuradio

目标:使用 Visual Studio 编译gnuradio的示例程序dial_tone 一.装备环境 1.安装 Visual Studio 2010 略 2.安装 Boost 库 从 Boost 官网下载最新的源码包,解压后,按照 GnuRadio 源代码目录下的 README.building-boost 文件描述,对 Boost 库 进行编译安装 .打开一个 Visual Studio 2010 命令行窗口,运行: bootstrap.bat set BOOST_PREFIX=<path_

让Visual Studio载入Symbol(pdb)文件

让Visual Studio载入Symbol(pdb)文件 让Visual Studio载入Symbol(pdb)文件 在VC编译工程的编译连接阶段,会产生Symbol文件,也就是常说的 pdb 文件.pdb 的全称为 program database,在 MSDN 中的解释为,pdb 文件是一个在编译和链接阶段产生的,包含了类型和调试符号信息的二进制文件.pdb 文件中包含了各个函数的符号表,也是进行 WinDbg 调试必不可少的文件. 既然 pdb 文件是给调试器使用的,那么 Visual

修改VISUAL STUDIO EXPRESS 2012新建C++文件编码

本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供markdown格式源码,欢迎使用文章源码进行转载: 本文标题:修改Visual Studio Express 2012新建C++文件编码 本文链接:http://zengrong.net/post/1900.htm 2013-12-03 更新:增加关于UTF-8(BOM)的说明 我突然发现Visual Studio Expres

CLR/.NET/C#/Visual Studio/ASP.NET各版本之间的关系

名词定义 下列这些名词,写.NET 的人一定都不陌生,但你是否有真正理解呢?如果看了我的摘要文字说明还无法理解的话,建议多查询相关文件或书籍,或直接在文章最下方留言讨论. CLR ( Common Language Runtime ) CLR 是.NET Framework 的虚拟机器元件(virtual machine component),用来管理执行中的.NET 程序. CLR有个重要的流程是JIT编译 (just-in-time compilation)机制,可以将.NET程式编译过的中

visual studio编译错误集(转)

1.error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 在项目属性->Configration Properties->C/C++->Command Line页面的Additional Options中加入/wd4430 2.error MSB3073: The command regsvr32 /s /c 解决办法 最近将VC2002 代码移植到VC2010,