getvalue - 如何从 ClrMd 指针重构 C# 对象
问题描述
我正在使用 ClrMd 检查 C# 应用程序中的内存,并在进程上连续创建了一个运行时对象。我使用运行时对象来调用 EnumerateObjects()。这将返回一个 ulong 集合,这些集合是对堆上所有对象的引用。如果引用是字符串,我可以使用 ClrType GetValue() 重构字符串。但是,当我在对其他对象的引用上调用 GetValue() 时,GetValue 返回似乎是另一个引用(即 ulong)的内容。
我是否需要执行某种 C# 不安全代码? 顺便说一句,我用 EnumerateObjectAddresses() 得到了相同的结果(两者之间有区别吗?)
解决方案
推荐阅读
- ember.js - 弃用:ember-cli-babel 5.x 已被弃用。无法获得余烬工作
- c# - 远程服务器返回错误:(502) Bad Gateway。在 MVC 中
- raspberry-pi3 - 启动时的 net-snmp 说 - Raspberry pi 中的“打开指定端点时出错” - 杰西卡
- php - 我无法在 pdo 中绑定到日期
- django - pycharm 中导入模型的 Intellisense 问题
- php - 通过 PHP 的 CSV 重复第一个条目
- c# - 尝试上传文件时,发生 FileBufferingReadStream.ThrowIfDisposed() 错误
- r - 在 dplyr 过滤器中连接
- csv - 带有逗号分隔符的文件无法使用 awk 和 cut 提供正确的结果
- javafx - 即使程序正在运行,我的 GUI 也不会显示。吨