-debug(C# 编译器选项)

在 Visual Studio 调试器中指定符号 (.pdb) 和源文件 阅读详情

-debug 选项将使编译器生成调试信息,并将此信息放置在输出文件或文件中。

语法

-debug[+ | -]  
-debug:{full | pdbonly}  

自变量

+ | -

指定 + 或仅 -debug 将导致编译器生成调试信息并将此信息放在程序数据库(.pdb 文件)中。 指定 -(在不指定 -debug 时生效)将导致不创建任何调试信息。

full | pdbonly

指定编译器生成的调试信息的类型。 完整参数(在不指定 -debug:pdbonly 时生效)允许将调试器附加到正在运行的程序。 指定 pdbonly 允许在调试器中启动程序时进行源代码调试,但仅在正在运行的程序附加到调试器时才显示汇编程序。

备注

使用此选项创建调试版本。 如果未指定 -debug、-debug+ 或 -debug:full,则无法调试程序的输出文件。
如果使用 -debug:full,请注意,对经过优化的 JIT 代码的速度和大小会存在一定影响,且对包含 -debug:full 的代码质量也有一定影响。 建议使用 -debug:pdbonly 或不使用 PDB 生成发布代码。

备注

-debug:pdbonly 和 -debug:full 之间的一个区别在于,使用 -debug:full,编译器将发出 DebuggableAttribute,用于告知 JIT 编译器有可用调试信息。 因此,在使用 -debug:full 时,如果代码包含设置为 false 的 DebuggableAttribute,则将出现错误。

有关如何配置应用程序的调试性能的详细信息,请参阅令映像更易于调试。
若要更改 .pdb 文件的位置,请参阅 -pdb(C# 编译器选项)。

在 Visual Studio 开发环境中设置此编译器选项

  1. 打开项目的“属性”页。
  2. 单击“生成”属性页。
  3. 单击“高级”按钮。
  4. 修改“调试信息”属性。

有关如何以编程方式设置此编译器选项的信息,请参阅 DebugSymbols。

示例

将调试信息放在输出文件 app.pdb:

csc -debug -pdb:app.pdb test.cs  
单个编译c#中的cs文件 一: 先配置Framework环境变量 关键字: 通过csc编译cs单个文件 1.编译 File.cs 以产生 File.exe: csc File.cs 2.编译 File.cs 以产生 File.dll: csc /target:library File.cs 3.编译 File.cs 并创建 My.exe: csc /out:My.exe File.cs 4.通过使用优化和定义 DEBUG 符号,编译当前目录中所有的 C# 文件。 阅读详情

相关推荐

C#编译器(VS2005_C#制作)

C#编译器(VS2005_C#制作)在执行编译好的exe文件不会闪烁后关闭!!!

debug调试工具的简单使用

debug指在软件开发中进行程序调试的操作,通常包括排查问题和修复错误等一系列步骤。在目前主流的开发工具中,基本都提供了程序调试工具,供程序员进行程序调试,可以用于查看程序的执行流程,也可以用于追踪程序执行过程。IDEA中debug工具的使用在集成开发环境IDEA中,提供了很多高效的工具,其中debug工具是开发人员常用功能之一。首先,在使用debug功能时,我们需要为程序添加断点。断点指的是在程序调试运行时,程序执行到断点处会停下,等待调试人员下一步调试操作。添加断点。

m0_59555392的博客 3280

自学篇--使用keil5.23创建一个stm32工程并编译(固件包自带版本)

之前在本科学习阶段学习过一点51单片机的知识,可是因为基本没有实践过几次现在已经完全忘记了。。前几天老师突然丢给我几个板子说让我把程序编译、烧写环境装好,当时我就震惊了,不过经过三四天的自我摸索,之后参考他人的学习经验,现在已经基本能处理这个问题了,所以为了方便后面的学者,主要也是为了把自己这几天的学习成果记录一下,我在这里把这个过程写下来。(因为刚刚接触,很多原理性的东西都还不懂,只是一个操作步

yang_csdnForOBTS的博客 8659

Windows平台下c++ 内存泄漏检查的办法(如VLD)

1. #define CRTDBG_MAP_ALLOC //注意顺序不能乱 #include <stdlib.h> #include <crtdbg.h> int main(void) { int* leak = new int[10]; _CrtDumpMemoryLeaks();//注意必须放在程序的结尾处 return 0; } 2. #include <crtdbg.h> int main(void) { #ifdef...

baidu_16370559的博客 4289

PRPD图谱分析从入门到精通:5种典型放电模式的识别手册

本文详细解析PRPD图谱分析技术,重点介绍电晕放电、悬浮放电等5种典型放电模式的识别方法。通过37组真实案例对比,提供关键识别区和诊断流程图模板,帮助工程师快速掌握变电站设备状态监测的核心技能,提升绝缘缺陷诊断准确率。

weixin_29214199的博客 473

Zlib1.2.11源码编译(Win10+VS2019)

下载 下载网址: zlib Home Site 得到文件: 解压缩到“D:\SourceCodes\zlib-1.2.11” 使用CMake配置、生成并打开项目 将CMakeLists.txt拖入CMake,配置(Configure): 生成(Generate) 打开项目(Open Project),CMake调用VS2019打开项目 生成debug版本 构建项目ALL_BUILD。成功生成debug版本 在“D:\Sourc...

Alexabc3000的专栏 1893

基于SpringBoot+Vue的公司考勤管理系统

为什么选择我博主是优快云毕设辅导博客第一人兼开派祖师爷、博主本身从事开发软件开发、有丰富的编程能力和水平。专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流和合作。

m0_71849512的博客 1162

(八)JAVA学习笔记--Debug

Debug1 Debug开篇2.基本用法&快捷键3 变量查看4 计算表达式5 智能步入6 断点条件设置7 多线程调试8 回退断点9中断Debug10 附:JRebel激活 1 Debug开篇 Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。 ① 以Debug模式启动服务,左边的一个按钮则是以Run模式启动。在开发中,我一般会直接启动D

CHAINQWE的博客 1202

从零解析:富斯i6遥控器与STM32的IBUS协议通信实战

本文详细解析了富斯i6遥控器与STM32通过IBUS协议通信的实战指南,涵盖硬件准备、协议解析、驱动实现及常见问题解决。特别适合机器人及智能小车开发者,提供低成本、高可靠性的无线控制方案,助力快速实现多通道控制功能。

weixin_29193359的博客 440

蓝牙抓包实战:用nrf52840和Wireshark解析广播包与SCAN_RSP的完整流程

本文提供了一份完整的蓝牙抓包实战指南,详细介绍了如何使用nRF52840 Dongle和Wireshark捕获并解析蓝牙广播包与SCAN_RSP。内容涵盖环境搭建、广播事件分析、数据包结构拆解以及常见连接问题的调试技巧,旨在帮助开发者和物联网工程师深入理解BLE底层通信,提升硬件调试能力。

weixin_29279153的博客 495

C#条件编译选项:Conditional(代替#if...#endif)

#if (Debug && Trace)    #define DebugAndTrace#endifusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Diagnostics;namespace ConsoleApplication3{    clas

Teng_s2000的专栏 1万+

优秀的 Verilog/FPGA开源项目介绍(二十七)- 小型CPU

介绍在FPGA上实现一个CPU是一个令人兴奋的事情,但是太复杂的CPU实现起来太难,而且不适合去了解计算机的架构,所以今天介绍一些小型的CPU,比如8051、MIPS、MSP430等~关于RISC-V的项目,请查看《优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V》ZipCPUhttp://zipcpu.com/about/zipcpu.html项目介绍Z...

OpenFPGA的博客 2576

如何用CSC.exe来编译Visual C# [转载]

Visual C#的编译器和以往编程语言的编译器有着明显的不同。其最大的不同点就是,以往的程序编译器是把编写好的程序代码编译生成可以直接为计算机所使用的机器语言。虽然Visual C#的编译器也可以把编写好的程序代码编译成EXE或者是DLL文件,但这种文件只是一种IL文件(中间语言),此IL文件不能直接被计算机使用。只是当此IL文件被调用的时候,再通过一种名叫JIT(即时编译)编译器把此IL文件生...

weixin_30570101的博客 134

【proteus】模拟串口和物理串口通讯

proteus提供了两种串口,一种是模拟的串口,还有一张是用软件仿真到硬件的物理串口。他们的区别就是:模拟串口只能在proteus内部进行通讯,但是物理可以通过软件映射到硬件上和单机或者串口软件通讯。 物理串口在元器件搜索COMPIM即可找到。 模拟串口在这里: PROTEUS仿真图: 物理串口COMPIM的设置: 模拟串口的设置: VSPD是一款虚拟串口软件,VSPD下载链接: 链接:https://pan.baidu.com/s/1AZygJCeWZfQTnxdCb_3TPg 提取码:12pm

阿蛋的博客 8933

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

[ZT]用CSC.exe来编译Visual C#的代码文件,解释CSC参数和开关的具体作用

Visual C#的编译器和以往编程语言的编译器有着明显的不同。其最大的不同点就是,以往的程序编译器是把编写好的程序代码编译生成可以直接为计算机所使用的机器语言。虽然Visual C#的编译器也可以把编写好的程序代码编译成EXE或者是DLL文件,但这种文件只是一种IL文件(中间语言),此IL文件不能直接被计算机使用。只是当此IL文件被调用的时候,再通过一种名叫JIT(即时编译)编译器把此IL文件生...

weixin_34279579的博客 121

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

C#:pdb

若需查看 PDB 内容,可使用工具如 [dotnet-dump](https://learn.microsoft.com/dotnet/core/diagnostics/dotnet-dump) 或 Visual Studio 的“模块”窗口加载符号信息进行验证。- `/debug:pdbonly`:仅生成 PDB,代码不可调试(适合需保留符号但不希望被附加调试的发布版)。- 默认行为:在 `Debug` 配置下,编译器自动在同目录生成与输出文件同名的 `.pdb` 文件;),否则调试器会拒绝加载。

chinalog的专栏 562

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C#编译开关

CSC.exe把Visual C#程序代码编译成IL文件时,有着很多参数和开关选项。正确的了解和运用这些参数和开关有时会解决一些看似很棘手的问题。下面就通过一张表来大致说明一下这些参数和开关的具体作用。这些参数和开关选项是按照字母顺序来排列的。其中带"*",是一些常用的参数或开关。 选项 用途 @ * 指定响应文件。 /?, /help 在控制台的计算机屏幕上显示编译器的选项 /addmodule...

weixin_34161083的博客 254

C#预处理器指令 用法

第一种: 在Visual Studio 开发环境中设置此编译器选项。 1,打开项目的“属性”页。 2,单击“生成”属性页。 如下图: 上图的几点说明: 1,如果在“Define DEBUG constant” 或“Define TRACE constant” 前面的checkbox上打勾,就说明已经定义了"DEBUG"或“TRACE”。那么在代码里就不用再写

大灰狼的博客 1215

C# 编译器命令行实例

编译file.cs并产生file.execsc file.cs 编译file.cs并产生file.dllcsc /t:library File.cs 编译file.cs并建立My.execsc /o:My.exe File.cs 将当前目录中所有*.cs文件编译并输出为File2.exe,且打开优化选项并定义DEBUG符号。csc /define:DEBUG /o...

weixin_30699463的博客 106

VS调试噩梦终结:彻底解决“断点无效/未能绑定”与代码“连蹦带跳”问题

在使用VS进行单步调式的时候,相加断点调试提示断点无效,断点未能绑定。 第一步:检查工具--选项--调试--仅我的代码/启用编辑和继续 第二步:检查项目属性生成,取消优化代码 启用仅我的代码取消掉 启用编辑并继续 取消项目优化代码,不然跟进的时候会跳过,根本不执行 你会相当懵,连蹦带跳的代码执行完了,跟了个锤子。 ...

这里没有晦涩理论,只有项目踩坑实录、问题速解、效率工具、源码封装与架构思路。专注项目实战,用最简单直白的方式,带你轻松搞定开发难题,高效写码,快乐下班。 9020

C# Debug模式下才执行的语句

在很多时候,我们开发的系统都要和别的系统打交道,但是在我们开发的时候又不能一直连接别的系统进行测试开发。 很笨的方法就是把与别的系统打交道的语句注释掉,不过这种方法不安全,不可靠,注释掉了这部分语句给用户安装运行时候 忘记取消注释了怎么办?   其实,C#里面已经有Debug模式下 #if DEBUG //这里的代码在 DEBUG 模式下编译 #else //这里在非 DEBUG 模式下编译 #endif ...

Pei_hua100的专栏 980

5分钟快速上手JavaCC:终极解析器生成器完全指南

你是否正在寻找一个强大的Java解析器生成器?JavaCC(Java Compiler Compiler)就是你需要的答案!作为最受欢迎的Java解析器生成工具,JavaCC能够从语法规则自动生成Java、C++和C#解析器,让语言处理变得简单高效。无论你是要构建自定义DSL、实现配置文件解析,还是开发完整的编译器,JavaCC都能为你提供专业级的解决方案。 ## 🌟 JavaCC解析器生成器

gitblog_00847的博客 149

VS中定义的DEBUG常量

学习C#的过程中按照教程的描述自己敲了一段代码,具体如下: using System; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Threading.Tasks;   namespaceConsoleApplication4 {     class Prog

小灰笔记 3917
上一篇: 基于C#语言Oracle.ManagedDataAccess操作Oracle数据库连接语句
下一篇: VS Code使用之基本设置与配置详解
.NET跨平台
博客等级 码龄15年 6066粉丝 738原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值