吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1669|回复: 0
收起左侧

[求助] dnspy调试时 禁止目标程序优化的问题

[复制链接]
Flyour 发表于 2021-1-25 10:37
dnspy 给出了两种禁止目标程序优化的方案:
https://github.com/dnSpy/dnSpy/wiki/Making-an-Image-Easier-to-Debug

第一种是设置环境变量 COMPlus_ZapDisable=1,COMPlus_ReadyToRun=0。查了一下COMPlus_ZapDisable 用于禁止使用优化版的 NGEN 托管映像( *.ni.dll) ,COMPlus_ReadyToRun 用于禁止使用提前编译的二进制代码。
相关链接如下:
https://stackoverflow.com/questions/35486740/what-is-complus-zapdisable-and-why-is-it-not-set-by-default
https://docs.microsoft.com/en-us/visualstudio/debugger/jit-optimization-and-debugging?view=vs-2019#limitations-of-the-suppress-jit-optimization-option


但是我使用了这种方式后,确实目标程序(以sharepoint为例)不再使用 .ni.dll 的优化映像了,但是仍然存在大量无法查看的变量,甚至部分位置无法下断点的情况,你们有没有出现过这种情况,想问一下原因是什么?


第二种是在目标托管映像的同位置创建一个同名 .ini 文件,其内容如下:
[.NET Framework Debugging Control]
GenerateTrackingInfo=1
AllowOptimize=0

使用这种方式后效果非常号,所有变量都可查看,所有位置都可以下断点,但是这种配置方式实在是麻烦。

所以想问一下大家,这两种方式到底区别在哪里,是不是我第一种配置哪里出了问题?

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 06:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表