• vc6.0 无法运行断点 解决方法


    问题:

    现象是用 debug中设置断点会出现One or morebreakpoints cannot be set and have been disabled.   Execution will stop at the beginning of the program.

    解决方法: 

    1) Build -> Set Active configuration 中是否选择了Win32Debug

    2)断点是否设在了注释信息那一行了,或者设在了变量声明上了(不带赋值的那种),这样会变成白圈的,它就不生效了。

    3)请看一下正在进行的程序是否是您所想调试的那个程序,(如果您要调试的不是dll文件就不需要查看这一步)
    因为有的时候是这样,比如您想要调试的程序是个dll文件,程序生成在一个您指定的目录下,但system/system32目录下也有这个文件,操作系统就会运行system32下的而不会来进行您想要调试的。这种情况,需要您把文件生成在系统目录下,system32/system(这要看什么操作系统了)

    4) Project -> Settings...    打开Project Settings 对话框
    查看:在Debug页中的 Executable for debug sessing: 项中的文件名是否是正在调试的程序文件名(包括相对或绝对路径)
    如果不是或者为空,请改正或正确填写。

    5)【本人使用的方法】如果还不成,请查看一下 C\C++ 页中的
    Optimizations: 项,是否选择了Disable [Debug],如果不是,请改过来。
    Debug info: 项,看它是否选择了 Program Database for Edit and Continue,如果不是,请改成这个。
    然后再看Link页中的 Generate debug info 与 Link incrementally 是否被选择,如果未被选择,请选上它

     附录:

     使用第5钟方法后,编译时可能产生的问题:

      Command line error D2016: '/ZI' and '/O1' command-line options are incompatible

      /O1:优化使产生的可执行代码最小 

      /ZI: 生成程序库文件(Pdb)并支持Edit and Continue调试特性

    两者冲突,在Project -> Settings...的C/C++页中的工程选项中删除 "/O1"

  • 相关阅读:
    LeetCode 2006 差的绝对值为K的数对数目
    web关键字驱动
    selenium 原理
    sched linux调度 CFS
    VMware linux虚拟机如何固定IP(亲测)
    linux centos + nginx +多版本php安装 实战(使用docker)
    如何设置linux 时区(只需一条命令)
    centos 安装 mongodb 只需三步
    生成包含常用扩展的docker phpfpm镜像含 php5.6 php7.1 php7.2 的dokcerfile(亲测可用202237)
    MySQL数据文件被恶意删除后的恢复
  • 原文地址:https://www.cnblogs.com/chinaqzh/p/2433476.html
Copyright © 2020-2023  润新知