从GetMessageW或NtUserGetMessage消息文本

我有一个是衍生作为后台进程,由于某种原因,似乎扔了一个消息框的背景的方法。 因此,该过程将挂起,我不能得到的消息。

谁能告诉我怎样才能获得通过的WinDbg在此消息的文本,或者任何其他方式? 这是Windows Server 2008的64位X64的本地C ++程序。

栈上的“挂”螺纹顶端(0)为:

00000000`0012fdc8 00000000`76ad9e9e USER32!NtUserGetMessage+0xa 00000000`0012fdd0 00000001`40bb2b04 USER32!GetMessageW+0x34 [..internal code...] 00000000`0012ff60 00000000`7707c521 kernel32!BaseThreadInitThunk+0xd 00000000`0012ff90 00000000`00000000 ntdll!RtlUserThreadStart+0x1d

谢谢!

--------------解决方案-------------

它没有显示一个信息 - 这是简单的Windows消息的接收/处理/调度循环。 Windows消息是一个事件,如定时器或鼠标移动。 因此,线程是不是真的卡住,这只是块的GetMessage如果没有张贴此thread'd消息队列中的消息。

分类:WinDbg的 时间:2012-01-01 人气:6
本文关键词: WinDbg中,GetMessage函数
分享到:

相关文章

  • 如何从在WinDbg中函数得到的返回值? 2014-01-14

    我试图调试一些的Win32API的喜欢的CreateThread返回的句柄. 如何获得WinDbg中的返回值? 我做了一些研究,发现一般存放在EAX寄存器返回值. 如果我把断点CreateThread的话,我可以进入的CreateThread的组装和ultimatelyw我会打到退役声明,这意味着CreateThread的正在恢复. 在这一点上我应该检查EAX寄存器的值来获得句柄值,或者是一些其他的方式? --------------解决方案------------- 没有另一个方式,是不基本相

  • 查看函数参数在WinDbg中 2014-02-15

    我是逆向工程的东西. 我想查看被传递到各种系统功能在WinDbg中的参数一个不错的打印输出. 有点像OllyDbg的一样. 我该怎么做这无符号吗? 谢谢.

  • 在WinDbg中,如何在kernel32.dll中所有的功能设置断点? 2012-05-07

    我想弄清楚的调用序列和功能于一身的功能kernel32.dll中example()在example.DLL 在WinDbg中,如何在kernel32.dll中所有的功能设置断点? 我试图bm kernel32!*但似乎不起作用. --------------解决方案------------- 因为说我不会做而已. 当然,这是可能的,但如果用做bm /a kernel32!*您在不经意间集BPS也对数据符号(而不是实际的功能). 在你的情况下wt -跟踪和监视数据(你可以看它在提供您的WinDbg

  • 谁能帮我解释从WinDbg中这个简单的拆卸? 2012-06-17

    我得到了以下简单的C ++代码: #include <stdio.h> int main(void) { ::printf("\nHello,debugger!\n"); } 而从WinDbg中,我得到了下面的反汇编代码: SimpleDemo!main: 01111380 55 push ebp 01111381 8bec mov ebp,esp 01111383 81ecc0000000 sub esp,0C0h 01111389 53 push ebx 0111138

  • 设置断点使用WinDbg中的源代码行数 2012-12-16

    我知道用BP设定的函数名断点基地的WinDbg,BM命令有没有一种方法来设置源代码行数破发点突破 说 <some command> 20 意味着它应该在第20行设置断点 提前致谢 --------------解决方案------------- BP source.c:12 或者,你可以加载在WinDbg中的源文件,将光标移动到你想设置一个断点行,按下F9键. 也可以尝试.hh bp的更多信息 下面是语法设定bp的行号 bp (@@masm(`main.c:8+`)) 对于上述工作.lines应

  • 有没有办法来转储va_list的个别参数在WinDbg中? 2013-08-22

    有没有办法来转储va_list的参数在WinDbg中给出的格式字符串和va_list的起始地址? --------------解决方案------------- 我通常只是用命令倾销堆栈的内容做dd esp (用于x86)或dq rsp (用于基于x64). 知道的va_list的起始地址使得它有点更容易找到在可变参数块开始堆的地方,但通常你可以猜测它或知道的常规(非可变参数参数)大小的函数计算. 下面是X86及注释的例子. 该功能被称为beeing: printf("%d %o %g %s %

  • 在WinDbg中understaning汇编代码 2013-12-09

    我调试WinDbg中的一些代码,我无法理解一些汇编代码 78151113 ff1230401e78 call dword ptr [Somefunction (781e9950)] ds:0023:781e9950=028d1170 有人能解释这种说法means.I知道这是调用语句,但它是如何跳转到028d1170地址 --------------解决方案------------- 该地址调用一个函数指针. 函数指针被存储在地址781e9950. 如果您检查地址781e9950的内容,你会发现它

  • 如何拆卸在WinDbg中本机API的最后几条指令? 2014-05-10

    我想拆机在WinDbg中本机API的最后几条指令. 我怎么会去这样做? 举例来说,我在内核模式在WinDbg中,想拆开KiSystemService API的最后几条指令,我该怎么做呢? 此外,如果有一种方法,以查看API的大小,这将是可能的,以查看的最后一条指令. ü!NT KiSystemService 给我周围的10行汇编语言代码. ü!NT KiSystemService L100 这将显示在我的系统服务调度程序的更多的代码. 但我的目标是要查看最后几条指令. 谢谢. ---------

  • 它是安全地从一个DirectShow Filter FillBuffer调用的PeekMessage / GetMessage函数()调用? 2014-06-29

    我必须使用DSPACK组件库在Delphi编写6一个DirectShow Filter. 这是一个从外部合作的过程,我也写接收其源帧一推源视频滤波器. 当调用我的过滤器"FillBuffer()调用创建并运行工作线程,当图形启动时,我从工作线程做的第一件事是创建一个使用AllocateHWND一个隐藏的窗口()来处理包含外部WM_COPYDATA消息生成的帧. 线程被摧毁之前,我摧毁隐藏的窗口. 换言之,创建隐藏的窗口,并在调用FillBuffer()工作线程的执行上下文销毁. 我的目的是让Fi

  • WinDbg中设置条件断点依赖调用堆栈 2014-07-10

    问题 :我需要一个脚本或表达式,如果在调用堆栈的地方是具有特定名称的函数,不破. 具体问题:我怎样才能在调用堆栈功能字符串列表? 例如: Module!MyFunctionWithConditionalBreakpoint Module!Function1 Module!Function2 Module!Function3 Module!MyFunctionWithConditionalBreakpoint Module!Function1 Module!ClassA:MemberFunctio

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.333 (s). 10 q(s)