- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
dd esp 00000000`03e3e490 14badf-6ren">
我的应用程序存在内存堆损坏问题。通过使用 windbg 和崩溃的转储文件作为输入,我使用 dd esp 命令得到以下输出
0:002> dd esp
00000000`03e3e490 14badf55 00000000 03e3e8c0 00000000
00000000`03e3e4a0 00000000 00000000 03e3e8c0 00000000
00000000`03e3e4b0 03e3e8c0 00000000 6b0064f2 00000000
00000000`03e3e4c0 03e3f030 00000000 6b002510 00000000
00000000`03e3e4d0 00000000 00000000 03dfede8 00000000
00000000`03e3e4e0 c0000005 00000000 00000000 7d6210e8
00000000`03e3e4f0 00000002 00000000 00000000 00000000
00000000`03e3e500 00000000 00001000 78b83980 036b0000
有这个地址:14badf55
我真的不知道怎么解释这个“坏”..
有人知道这个坏的意思吗?
编辑:
当我尝试使用这个命令时:
u 14badf55
出现以下输出:
00000000`14badf55 ?? ???
^ Memory access error in 'u 14badf55'
.ecxr 命令给我:
rax=0000000003e3e488 rbx=0000000003e3e8c0 rcx=0000000003e3dfb0
rdx=0000000000000000 rsi=000000006b005a17 rdi=0000000000000000
rip=000000006b006369 rsp=0000000003e3e490 rbp=0000000003dfede8
r8=000000006b00254a r9=0000000003e3e4d8 r10=0000000000000007
r11=0000000000000000 r12=000000006b01fe90 r13=0000000000000000
r14=0000000003e3f110 r15=0000000078b83980
iopl=0 nv up ei pl nz na po nc
cs=0033 ss=002b ds=0000 es=0000 fs=0000 gs=0000 efl=00000204
wow64!Wow64NotifyDebugger+0x9:
00000000`6b006369 b001 mov al,1
最佳答案
您可以在文件中看到 c0000005 输出。这是访问冲突的标志。
运行以下命令:- .cxr 00000000`03e3e4e0(设置异常上下文)- kL(获取堆栈跟踪)
关于c++ - windbg coredump分析地址带 "bad",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8703163/
我在我的Ubuntu23.04上构建了一个可执行文件(mybin.out),并将它和它的所有依赖项(共享库)放在一个文件夹中(文件夹名=exec文件夹)。我将文件夹复制到另一台Linux机器(Ubun
我不确定这是否是 C 库或其他一些将内容转储到核心文件并使程序退出的东西。我的意思是 glibc 或 libc 处理 SIGSEGV 并在处理函数中创建核心转储?请解释一下。 最佳答案 在linux中
我正在从我的 C 程序中调用 make,该实习生执行另一个程序。我将标准输出和标准错误都重定向到一个文件。但是,当 make 运行的程序由于段错误而终止时,会生成核心转储并将其打印到调用 make 的
#include #include main() { char tmpChar; char *str_1 = "Hello"; int index; int l
我在下面写了一个简单的程序: #include unsigned int *time = 0; int main(){ printf("time = %u\n", *time); retur
Linux 核心转储或 Windows 小型转储的 Java 等价物是什么?我读过堆转储,它看起来像我想要的,但如何在未捕获的异常上(自动)触发它们? 我知道未捕获的异常处理程序,我已经在使用它来打印
我正在设置 ulimit -c unlimited. 而在 c++ 程序中我们正在做的事情 struct rlimit corelimit; if (getrlimit(RLIMIT_CORE,
我在这里有一个情况,几天前我能够在目标板上看到核心文件,我通过在/etc/profile 中添加“ulimit -c unlimited”来提供核心转储生成支持。但后来有人告诉我 这只会对从登录 sh
最近开始使用指针并创建了一个小脚本,应该将一些文本文件拼接在一起。 但是,当我尝试调用 fputs 时,出现核心转储/段错误。我怀疑这是因为文件指针的保存方式。我发现这些文件将它保存在一个数组中,并稍
我有一个 6GB 的转储文件用于我生成的 IIS 进程,在处理的“运行分析”阶段,我在 60 秒限制后从工具收到“因超时取消”消息。 有没有办法增加超时? 最佳答案 可以通过编辑 C:\Program
我试图在用 C 编写的 linux 守护进程中找到错误。该守护进程应该以无限循环的方式运行来响应请求。有时它会无缘无故地停止。没有创建核心转储。没有内核段错误消息写入/var/log/messages
我正在开发多线程应用程序。当进程转储时,它会显示如下。我无法分析核心。我想知道与库链接时是否有问题?请建议如何获取有关我的核心转储的更多信息。 库: #########################
核心转储的回溯: #0 0x0000000000416228 in add_to_epoll (struct_fd=0x18d32760, lno=7901) at lbi.c:7092 #1 0
我基本上是在跟进core dump note section .我没有发布那个问题,但我正在尝试做同样的事情:编写一个程序从头开始创建核心转储文件;除了我正在尝试为在嵌入式 ARM 处理器上运行的自定
我正在尝试在 docker 容器中运行一个 Symfony 项目。 所以,有我的 docker-compose.yml : version: '3.7' services: mariadb:
我需要为由 SIGABRT、SIGBUS 等终止的进程启用核心转储文件创建。 在以前版本的 MAC OS X(包括 ElCapitan)中,为我将执行的所有进程启用代码转储文件: sudo sysct
当我用 编译代码时g++ -g -o prueba prueba.cpp -lstdc++ -O3 -march=corei7 -mtune=corei7 -std=c++0x 使用g++ -g pr
我正在编写一个使用 openssl 库的程序。我的程序可以正常运行,但是当我尝试使用 valgrind 执行它时,出现段错误。当我尝试(在操作系统上)执行它时,即使我使用 gdb,也没有问题。 我多次
我想将 int 值转换为 wchar_t buffer[MAX_LEN],使用 std::to_wstring(dwValue); 然后使用 res.copy 将值复制到缓冲区,我不知道为什么会导致
我在将文件内容读取到 std::string 时遇到了核心转储。代码如下: bool readContentFromFile(const char* fileName, std::string& co
我是一名优秀的程序员,十分优秀!