VS调试不进入断点解决方法

VS调试不进入断点解决方法

1. 确保进入调试状态
代码中指定程序是需要管理员身份运行,实际调试时VS未使用管理员身份,会导致点击调试实际未进入调试状态。
例如
VS下设置调试使用管理员权限方法:

  1. 打开程序集的属性窗口,找到“安全性”设置,其中有一个“启用 ClickOnce 安全性设置”,勾选后再反勾选该复选框。
    属性”
    安全性
  2. 此时在解决方案资源管理器中,就可以找到 app.manifest 文件,勾选“启用 ClickOnce 安全性设置”是为了让VS生成这个文件,取消勾选是为了支持后面对 requestedExecutionLevel 的设置。
    app.manifest
  3. 打开 app.manifest,将 requestedExecutionLevel 设置为
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
    requestedExecutionLevel
    三个level的功能如下:
    asInvoker:应用程序就是以当前的权限运行。
    highestAvailable:应用程序以当前用户可以获得的最高权限运行。
    requireAdministrator:应用程序仅以系统管理员权限运行。

  4. 此时再次调试程序时,VS会提示“此任务要求应用程序具有提升的权限”,点击“使用其他凭据重新启动”即可。如果还是弹出之前“拒绝访问”的异常,可尝试重启一下VS,此时再调试程序,就可以直接以管理员身份进行调试了。
    管理员身份

2.重新生成解决方案或者先清理解决方案再生成解决方案
3. 禁用要求源文件与原始版本完全匹配
工具->选项->调试->常规->禁用要求源文件与原始版本完全匹配。
选项
禁用要求源文件与原始版本完全匹配

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
如果您在 Visual Studio 2022 中调试 DLL 时发现断点无法进入,请确保您已经进行了以下步骤: 1. 确保 DLL 项目已经以调试模式进行构建。在解决方案资源管理器中,右键单击 DLL 项目,选择 "属性"。在属性页中,选择 "配置属性" -> "常规",确保 "配置类型" 设置为 "动态库(.dll)",并且 "调试信息格式" 设置为 "调试"。 2. 确保您的应用程序正确加载了 DLL。在 Visual Studio 中,您可以通过在 "调试" 菜单中选择 "附加到进程" 来手动附加到正在运行的应用程序。选择您的应用程序进程,并点击 "附加" 按钮。 3. 确保您设置了正确的断点。在 DLL 项目的代码中,单击行号旁边空白处设置断点。确保您设置的断点是在实际会执行的代码行上。 4. 如果您的 DLL 是由另一个应用程序加载的,而不是直接运行的,那么请确保您在正确的环境下进行调试。有些应用程序可能会以不同的用户权限或沙盒环境运行,这可能会导致断点无法进入。您可以尝试以管理员权限运行 Visual Studio 或目标应用程序,或者将目标应用程序的启动路径设置为可访问的路径。 5. 确保您的代码没有被优化。在 Visual Studio 中,您可以在 DLL 项目的属性页中的 "配置属性" -> "C/C++" -> "优化" 下,将 "优化" 选项设置为 "无(/Od)",以确保代码没有被优化,从而使断点能够进入。 如果您仍然遇到断点无法进入的问题,建议检查您的代码和项目配置是否正确,并尝试重启 Visual Studio 和目标应用程序。有时候,重新构建项目和清理解决方案也有助于解决此类问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值