zoukankan      html  css  js  c++  java
  • Visual Studio调试器指南---编辑并继续不支持的情况

    “编辑并继续”处理大多数类型的代码更改。 但是,在程序执行期间,某些更改无法应用。 若要应用这些更改,必须停止执行并生成新版本的代码。

    不支持的方案

    在以下调试方案中,“编辑并继续”不可用:

    • 在 Windows 98 上调试。

    • 混合模式(本机/托管)调试。

    • SQL 调试。

    • 调试 Dr. Watson 转储。

    • 在未选择**“在未经处理的异常上展开调用堆栈”**选项的情况下,在发生未经处理的异常之后编辑代码。

    • 使用**“附加到”来调试应用程序,而不是单击“调试”菜单上的“开始”**来运行应用程序。

    • 调试优化后的代码。

    • 当目标为 64 位应用程序时,调试托管代码。 如果希望使用“编辑并继续”,必须将目标平台设置为 x86 (**“项目属性”对话框->“编译”选项卡->“高级编译器”**设置。)

    • 如果由于生成错误无法生成新版本的代码,则对旧版本的代码进行调试。

    在调试会话期间不能应用的 C/C++ 更改

    • 大多数的全局或静态数据的更改。

    • 从其他计算机复制并且未在本地生成的可执行文件的更改。

    • 影响一个对象(如类的数据成员)布局的数据类型的更改。

    • 添加超过 64k 字节的新代码或数据。

    • 添加要求在指令指针前存在构造函数的变量。

    • 影响需要运行时初始化的代码的更改。

    • 在某些实例中,添加异常处理程序。

    • 资源文件的更改。

    • 只读文件中的代码更改。

    • 没有相应 PDB 文件的代码的更改。

    • 没有对象文件的代码的更改。

    如果进行了上面某项更改,然后尝试应用代码更改,**“输出”**窗口中就会出现错误或警告信息。

    • “编辑并继续”不更新静态库。 如果您更改了静态库,仍会继续执行老版本,且不显示任何警告。
  • 相关阅读:
    (转载) 随机数原理
    ZOJ 2588 Burning Bridges(求桥的数量,邻接表)
    生成不重复的随机数对(C/C++)
    比较两个文件是否相同(C/C++语言)
    计算文件大小(C/C++语言)
    (转载)Nim游戏博弈(收集完全版)
    将一串字符串全排列输出(回溯法)
    Linux中使用Crontab定时监测维护Tomcat应用程序的方法
    Nginx单向认证的安装配置
    非关系型数据库 2017-02-12 22:27 189人阅读 评论(2) 收藏
  • 原文地址:https://www.cnblogs.com/yilang/p/12621441.html
Copyright © 2011-2022 走看看