Visual Studio 调试系列7 查看变量占用的内存(使用内存窗口)
在调试期间,“内存”窗口显示应用程序正在使用的内存空间。
调试器窗口(如监视窗口、自动窗口、局部变量窗口和快速监视对话框)显示变量,这些变量存储在内存中的特定位置。“内存”窗口向您显示整体图片。内存视图便于检查在其他窗口中显示不好的大数据块(例如缓冲区或大字符串)。
内存窗口不限于显示数据。它显示内存空间中的所有内容,包括数据、代码和未分配内存中的随机垃圾位。
内存窗口不可用于脚本或SQL调试。这些语言不能识别内存概念。

要启用内存窗口,必须在“工具>选项”(或“调试>选项”)>调试>常规中选择“启用地址级调试”。
打开“内存”窗口
请确保启用地址级调试中选择工具 > 选项(或调试 > 选项) >调试 > 常规。
开始调试通过选择绿色箭头,按F5,或选择调试 > 开始调试。
下调试 > Windows > 内存,选择内存 1,内存 2,内存 3,或内存 4。 (某些版本的Visual Studio产品/服务只有一个内存窗口。)

计算机的地址空间很大,您可以通过滚动内存窗口轻松地丢失您的位置。
较高的内存地址显示在窗口的底部。要查看更高的地址,请向下滚动。要查看较低的地址,请向上滚动。
您可以使用拖放或在“ 地址”字段中输入地址,立即转到“ 内存”窗口中的指定地址。“ 地址”字段接受字母数字地址和计算地址的表达式,例如。e.User.NonroamableId
要强制立即重新评估“ 地址”字段中的表达式,请选择“ 自动重新评估自动”图标的圆角箭头。
默认情况下,“ 内存”窗口将“ 地址”表达式视为实时表达式,在应用程序运行时将其重新评估。例如,实时表达式可用于查看指针变量触及的内存。
要使用拖放移动到内存位置:
在任何调试器窗口中,选择内存地址或包含内存地址的指针变量。
将地址或指针拖放到“ 内存”窗口中。该地址随后出现在“ 地址”字段中,“ 内存”窗口将调整为在顶部显示该地址。
要在“地址”字段中输入内存位置,请移至内存位置:
- 在“ 地址”字段中键入或粘贴地址或表达式,然后按Enter键,或从“ 地址”字段的下拉列表中选择它。“ 内存”窗口调整为在顶部显示该地址。

按下回车键,如下图:

但是个人看不懂里面具体的内容。
默认情况下,内存内容以十六进制格式显示为1字节整数,窗口宽度决定显示的列数。您可以自定义“ 内存”窗口显示内存内容的方式。
要更改内存内容的格式:
- 在“ 内存”窗口中单击鼠标右键,然后从上下文菜单中选择所需的格式。

要更改“内存”窗口中的列数:
- 选择“ 列”字段旁边的下拉箭头,然后选择要显示的列数,或者根据窗口宽度选择“ 自动”进行自动调整。也可以手动输入数字。

如果您不希望在应用程序运行时更改“ 内存”窗口的内容,则可以关闭实时表达式评估。
要切换实时评估:
在“ 内存”窗口中单击鼠标右键,然后在上下文菜单中选择“ 自动重新评估”。
您可以隐藏或显示“ 内存”窗口顶部的工具栏。隐藏工具栏时,您将无法访问“ 地址”字段或其他工具。
要切换工具栏显示:
- 在“ 内存”窗口中单击鼠标右键,然后在上下文菜单中选择“ 显示工具栏 ”。工具栏显示或消失,具体取决于其先前的状态。

在本机代码应用程序中,您可以将注册名称用作实时表达式。例如,您可以使用堆栈指针跟随堆栈。
要通过内存跟踪指针:
在“ 内存窗口地址”字段中,输入当前范围内的指针表达式。根据语言的不同,您可能需要取消引用它。
按Enter键。
使用诸如Step之类的调试命令时,“ 地址”字段和“ 内存”窗口顶部显示的内存地址会随着指针的更改而自动更改。

Visual Studio 调试系列7 查看变量占用的内存(使用内存窗口)的更多相关文章
- Visual Studio 调试系列6 监视变量(使用监视窗口和快速监视窗口)
系列目录 [已更新最新开发文章,点击查看详细] 当你进行调试时,可以使用 监视窗口 和 快速监视窗口 来监视变量和表达式. 仅在调试会话期间,这两个窗口才可用. 监视窗口可以在调试时一次显示多 ...
- Visual Studio 调试系列5 检查变量(使用自动窗口和局部变量窗口)
系列目录 [已更新最新开发文章,点击查看详细] 在调试时,“自动变量”和“局部变量”窗口会显示变量值. 仅在调试会话期间,这两个窗口才可用. “自动变量”窗口显示当前断点周围使用的变量. “局 ...
- Visual Studio 调试 ---- 系列文章
调试是软件开发过程中非常重要的一个部分,它具挑战性,但是也有一定的方法和技巧. Visual Studio 调试程序有助于你观察程序的运行时行为并发现问题. 该调试器可用于所有 Visual Stud ...
- Visual Studio 调试系列12 远程调试部署在远程计算机IIS上的ASP.NET应用程序
系列目录 [已更新最新开发文章,点击查看详细] 要调试已部署到IIS的ASP.NET应用程序,请在部署应用程序的计算机上安装并运行远程工具,然后从Visual Studio附加到正在运行的应用 ...
- Visual Studio 调试系列9 调试器提示和技巧
系列目录 [已更新最新开发文章,点击查看详细] 01 固定数据提示 如果你在调试时,经常将鼠标悬停在数据提示上,就可能想固定变量的数据提示,方便自己随时查看. 即使在重新启动后,固定的变量也能 ...
- Visual Studio 调试系列10 附加到正在运行的进程
系列目录 [已更新最新开发文章,点击查看详细] 可将 Visual Studio 调试器附加到本地或远程计算机上正在运行的进程. 进程运行后,在 Visual Studio 中选择“调试” & ...
- Visual Studio 调试系列2 基本调试方法
系列目录 [已更新最新开发文章,点击查看详细] 在 Visual Studio 上下文中,当调试应用时,这通常意味着你在附加了调试器的情况下(即在调试器模式下)运行应用程序. 执行此操作时,调 ...
- Visual Studio 调试系列4 单步后退来检查旧应用状态(使用使用 IntelliTrace 窗口)
系列目录 [已更新最新开发文章,点击查看详细] IntelliTrace 后退会在每个断点处及调试器步骤事件发生时自动拍摄应用程序的快照. 凭借记录的快照便可以返回到上一个断点或步骤,并查看当 ...
- Visual Studio 调试系列1 Debug 与 Release 模式
系列目录 [已更新最新开发文章,点击查看详细] Debug 模式 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序. 在Debug模式下调试,可以在断点处看到 ...
随机推荐
- 2019-3-20-UWP-How-to-custom-RichTextBlock-right-click-menu
原文:2019-3-20-UWP-How-to-custom-RichTextBlock-right-click-menu title author date CreateTime categorie ...
- 宣布Visual Studio Code Installer for Java
自从第一个Java语言服务器在微软苏黎世办公室的一个小型会议室的黑客马拉松中开发已经差不多3年了,该会议室的人员来自Red Hat,IBM,Codenvy和Microsoft,后来成为Visual S ...
- 浅谈 Web框架
一.Web框架本质 所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端 二.Web框架功能 socket收发消息 —— wsgiref(测试).uwsgi(线上 ...
- 虚拟机中安装Kali遇到的问题及解决方法
title: 虚拟机中安装Kali遇到的问题及解决方法 date: 2018-11-25 12:25:43 tags: 安全 --- 关于Kali版本选择 kail官方下载页面 虚拟机中当然就下载虚拟 ...
- 渗透常见linux命令
在拿到一个 webshell 之后,大家首先会想到去把自己的权限提升到最高,windows 我们会提升到 SYSTEM 权限,而 Linux 我们会提升到 root 权限,拿在进行 Linux 提权的 ...
- SQLi-LABS Page-2 (Adv Injections) Less23-Less26
Less-23 GET - Error based - strip comments http://10.10.202.112/sqli/Less-23?id=1' Warning: mysql_fe ...
- X264-libx264编码库
X264编码库libx264实现真正的视频编解码,该编解码算法是基于块的混合编码技术,即帧内/帧间预测,然后对预测值变换.量化,最后熵编码所得. 编码帧的类型分为I帧(x264_type_i).P帧( ...
- Linux 用libevent实现的简单http服务器
Linux 用libevent实现的简单http服务器 main.c #include <stdio.h> #include <sys/types.h> #include &l ...
- 团队第五次作业——Alpha2版本
这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/2019autumnsystemanalysisanddesign/ 这个作业要求在哪里 https:// ...
- Visual Studio的UTF-8问题
参考:https://www.jianshu.com/p/c51cbb2f20e1 一.在“工具”菜单找到“自定义”,然后按照图示操作. 二.选择“编码”.
