Ollydbg 1.10“返回用户模式”不起作用

2024-01-17

我尝试学习“莉娜为新手倒车” https://tuts4you.com/download.php?view.125,当出现一些麻烦时。 我使用 ollyDbg 启动 Pixtopian Book,然后尝试使用 MessageBox 来显示有关未注册版本的消息。 然后我切换到OllyDbg,停止程序执行并按“Alt+F9”“返回用户模式”,这会在程序从DLL退出后停止。

但这个程序不起作用后,它就被冻结了,不响应我的操作。 如果我关闭“返回用户模式”程序正常工作。

有什么问题?我可以尝试在 IDA(使用 WinDbg)或其他调试器中使用“返回用户模式”吗?我该如何做到这一点?我可以在 OllyDbg 中修复它的功能吗?

附:就像使用“ALT+F9”后程序停止并且没有运行。

/抱歉我的英语不好,我只是在学习;-)/


首先,Ollydbg是为了32位平台。这意味着它只能在 32 位操作系统上运行,并且只能调试 32 位应用程序。

在 x64 操作系统(特别是 Windows)中,有一个称为兼容模式让您可以运行 32 位应用程序。 32 位代码要么通过仿真运行,要么以本机方式运行(当硬件本身实现指令集时,称为 x86-64)。

因此,当您尝试在 x64 环境中运行 Ollydbg 时,它会运行,但您会遇到像您所面临的问题。出现这种情况是因为Ollydbg 在仿真模式下运行。作为调试器,它需要访问寄存器和其他系统结构,但它被拒绝了。它看到的是系统的虚拟镜像。

所以问题的解决方案是使用虚拟机 http://en.wikipedia.org/wiki/Virtual_machine.

您将在其中安装 32 位操作系统并使用 Ollydbg 调试应用程序。就虚拟机而言,我建议VMWare http://www.vmware.com/worldwide.html。您可以使用工作站版本或播放器版本。后者是免费的,但不支持快照。

其他解决方案是虚拟盒 https://www.virtualbox.org/, 并行工作站 http://www.parallels.com/support/workstation/ and 微软虚拟电脑 http://www.microsoft.com/en-US/download/details.aspx?id=3702。 它们的缺点是Virtual Box 不支持硬件断点, 不再支持 Parallels Workstation自 2014 年起,您将获得BSOD http://en.wikipedia.org/wiki/Blue_Screen_of_Death如果您尝试单步执行 FPU 指令。不过我还没有测试过 Virtual PC。

注意:Ollydbg 不支持 x64,但其作者正在开发 x64 版本。 http://www.ollydbg.de/odbg64.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ollydbg 1.10“返回用户模式”不起作用 的相关文章

  • Visual Studio 调试器提示和技巧(适用于 C/C++ 项目)

    我对有关在 Visual Studio 调试器中调试 C C 项目的提示和技巧感兴趣 我最近发现 如果您有一个指向某种数据类型的指针 比如说 char ptr 那么您可以使用以下语法在监视窗口中将其视为数组 ptr 10 这将显示 ptr
  • 在 Chrome 中调试 XSLT

    我在 Chrome 中进行 XSL 翻译时遇到问题 我想知道是否有任何工具可以让我逐步浏览样式表以查看问题出在哪里 Use 节点测试 http dpawson co uk xsl sect2 nodetest html检查 XPath 查询
  • 有没有 JavaScript 去混淆器(deobfuscator)之类的东西? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 这个问题正好相反哪种 JavaScript 压缩器 粉碎器 与 Google 用于其 JavaScri
  • Android 中什么原因导致 MotionEvent.ACTION_CANCEL?

    我正在调试 Android 上的一些触摸处理内容 并试图找出为什么 MotionEvent 发送到我的视图onTouchListener包含一个cancel行动 我无法找到任何有关其原因的文档 并且希望有人能为我指出调试此问题的正确方向 错
  • R 中的高级调试功能?

    R 中是否有任何软件包和 或 hack 可以为调试器提供更多功能 我专门寻找 能够跳过整个循环 无需调用即可单步执行函数调用的能力debug对他们也 设置断点或有效插入的能力browser当我已经在调试器中时调用代码 也就是说 如果我在调试
  • (定义一个宏)方便OpenGL命令调试?

    有时插入条件打印和检查需要很长时间glGetError 使用二分搜索的形式来缩小范围 其中第一个函数调用是 OpenGL 首先报告错误 我认为如果有一种方法可以构建一个宏 我可以包装所有可能失败的 GL 调用 并有条件地调用 那就太酷了gl
  • 专门逐行调试

    我有一个用 Pascal 编写的脚本 我会以这种方式调试它 在每一行停止 转储内存中所有变量的值 然后转到下一行 是否可以使用 gdb 或其他 Linux 开源工具来完成此操作 使用选项编译文件 g fpc gpc g file pas R
  • 有没有办法在 Visual Studio 或 MATLAB 中“映射”程序执行顺序?

    我所说的 地图 是指我有一个 主 函数 它调用内部的许多其他程序 我希望能够看到哪个文件首先运行 第二个 第三个等等 基本上 我希望能够请参阅这个大型 OOP 设计程序 创建者没有为其制作 UML 类图 中的依赖项列表和顺序 以帮助破译代码
  • 哪个信号被传递到信号处理程序中死锁的进程

    我有一个来自调用信号处理程序后死锁的进程的核心转储 如何确定传送了哪个信号以及是谁发送的 GDB 为接收信号的线程生成的回溯如下 信号处理程序在第 15 帧中被调用 gdb bt 0 0x00007fa9c204654b in sys fu
  • 如何在 Rust 中使用 cfg 检查发布/调试版本?

    使用 C 预处理器很常见 if defined NDEBUG release build endif if defined DEBUG debug build endif Cargo 的大致等价物是 cargo build release以
  • 使用 ffmpeg 将视频与其自身连接,但相反

    我能够逆转 ffmpeg i input mp4 vf reverse output reversed mp4 我可以连接 ffmpeg i input mp4 i input mp4 filter complex 0 0 0 1 1 0
  • 编写 LESS 时,chrome 调试器中出现红点?

    我正在将 css 文件转换为 LESS 文件 我的 LESS 只有一部分运行良好 我在 chrome 调试器中看到那些有问题的行有一条奇怪的红点线 知道它们是什么意思吗 http codemirror net doc releases ht
  • 在 Haskell/Yampa 和 HOOD 中调试游戏对象的输出

    我一直坚持使用 Haskell Yampa Arrows with HOOD 为我的游戏对象生成调试输出 我的引擎基本上运行一系列游戏对象 这些对象产生输出状态 线 圆 然后进行渲染 data Output Circle Position2
  • 无法在 Apple Calendar 中绑定()套接字(dylib 注入)

    我正在尝试检查 iOS 8 1苹果日历 MobileCal app on Reveal http www revealapp com下列的本指南 http petersteinberger com blog 2013 how to insp
  • 如何在浏览模式下禁用 RStudio 中的查看模式

    Is there a way to disable the View mode in RStudio when debugging functions 代码示例 myfun lt function browser myfun 我知道它不开放
  • 观察点固定地址

    对于我当前的嵌入式应用程序 我尝试将 GDB 观察点放在固定的内存地址处 例如 我的应用程序更新以下地址 0x10793ad0 为了确定代码的哪一部分破坏了值 我尝试了 watch 0x10793ad0 即使 GDB 在此之后不会打印任何错
  • 调试 Android 库中的本机代码

    我的工作空间布局是 ApplicationLibrary AndroidManifest xml jni libs src Application AndroidManifest xml ant properties 如何在 Eclipse
  • C# 编译器如何删除发布版本中的 Debug.Assert?

    我最近正在浏览一些代码 并考虑是否需要小心放置在其中的表达式Debug Assert语句 例如昂贵的操作或具有副作用的操作 然而 编译器似乎非常聪明地完全删除了Assert陈述和内在表达 例如 以下内容只会在调试版本上打印 static v
  • valgrind 和 iOS SDK 4.2?

    使用 valgrind 运行 iOS 4 2 应用程序时遇到问题 我从 Macports 安装了 valgrind 3 6 0 SVN Xcode 3 2 5 当我修改 main 以运行 valgrind 时 我得到以下输出 Detecte
  • WinDbg中出现“SOS版本与您正在调试的CLR版本不匹配”怎么办?

    我的某些应用程序出现问题 它是一个基于 wcf 的应用程序 在 Windows 2003 Server x86 的 IIS6 下运行 在事件日志中 我从 W3SVC WP 源 EventID 2262 收到这样的错误 ISAPI C WIN

随机推荐

  • MySql 全天候查询结果

    我需要获取一天中所有时间的数据 即使计数为 0 现在它输出 clicks hour 1 7 2 13 我现在的查询 SELECT count as clicks hour time as hour FROM clicks WHERE DAT
  • DOM 中相邻的文本节点可以用 Javascript 合并吗?

    假设我在网页 DOM 中有一个句子 当我检查它时 它由 3 个文本节点组成 后跟一些元素 例如粗体或斜体 我想将文本节点合并为一个文本节点 因为相邻的文本节点是没有意义的 没有理由拥有它们 有没有办法轻松合并它们 谢谢 看起来Node no
  • JPA OneToOne 关联,其中 2 个实体使用复合主键但使用不同的列名称?

    我们正在尝试将 Hibernate 与数据库一起使用 该数据库使用lot复合键的使用一直让我们很头疼 不幸的是 我们无法更改架构 因此我们必须在字段之间进行大量额外的映射 我们仅限于使用 JPA 1 0 和 Hibernate 3 3 最大
  • WooCommerce 中特定单个产品页面的附加自定义按钮

    在 WooCommerce 中 需要创建另一个按钮 该按钮重定向到特定产品页面当前 添加到购物车 按钮下方的 联系我们 表单 例如 http offers elements com sg product ha power dose faci
  • 具有“加权”边缘的 Ford-Fulkerson 算法

    福特 福尔克森是否有任何变体可以在边缘增加额外的 重量 尺寸 我的意思是 某些边缘比其他边缘更理想 尽管存在所有可能性 但它会优先考虑理想边缘而不是不太理想的边缘 据我所知 增加权重有两种常见的概括 最小成本流 假设您对每条边都有一个权重
  • 将 $or 与 $elemMatch 和数组外部的条件一起使用

    我的基本结构是我有一个 User 对象和一个包含 subjectId 和每小时价格的会话对象 User defaultHourly Number subjects id String hourly Number 我这样使用 elemMatc
  • 如何在 JavaScript 中计算负整数的模?

    我试图通过递增或递减 1 来迭代 jQuery 对象数组 因此 对于递减部分 我使用以下代码 var splitted id currentDiv attr id split var indexOfDivToGo parseInt spli
  • Vagrant 与 apache 同步文件夹权限问题

    我正在运行 Centos6 4 机器 Running vagrant upVagrant 文件中没有同步文件夹配置就可以了 我可以通过以下方式访问我的主机http localhost 8080它显示 Apache 页面 我可以在中创建ind
  • 比较rapidjson::文档

    我有两个 RapidJSON 文档 一个是我在运行时创建的 另一个是从磁盘读取的 我想比较这两个文件是否相似 比较 RapidJSON 文档的最佳方法是什么 我的 JSON 看起来像这样 SimpleCompany Manager read
  • 如何使用 PHP 读取串口 [重复]

    这个问题在这里已经有答案了 如何使用 php 从连接到我的服务器 运行 kali linux 的旧笔记本电脑 上的 COM 端口的 arduino 读取串行数据 以便我可以在网页上显示数据 我读过有关同一问题的其他问题 所有这些问题要么超级
  • 虚幻引擎 4 中的 C++ 嵌套 JSON

    我有一个从服务器获取的 JSON 对象 如下所示 state 1 player1 alias Player Name ready 0 我能够获取 JSON 将其解析为 FJsonObject 并使用以下代码检索 JSON 对象第一级中的任何
  • 使用多个 Getter 时用 Try-Catch 代替 Null 检查

    我的问题如下 我有一个很长的 Getter 即 objectA getObjectB getObjectC getObjectD getObjectE getName 由于 糟糕的 数据库 实体设计 有些东西比其他东西晚于其他东西引入 它发
  • 获取所选项目的详细信息

    我正在使用sap m ObjectListItem作为我已从 API 绑定 JSON 数据的列表项 但是 当我按下某个项目时 我找不到从列表中获取所选项目的方法 甚至获得该物品的钥匙也会有帮助
  • 用 unicode 分隔符分割字符串? [复制]

    这个问题在这里已经有答案了 给定字符串 str Led Zeppelin Blackdog 我该如何分割它 最终得到 Led Zeppelin Blackdog but 不是连字符 它被编码为u u2014 我该怎么做 如果您希望清楚地表明
  • 组合词频数据列表

    这似乎应该是一个显而易见的问题 但列表上的教程和文档尚未发布 其中许多问题源于我的文本文件的巨大大小 数百 MB 以及我试图将它们归结为我的系统可以管理的内容 因此 我正在分段进行工作 现在正在尝试合并结果 我有多个词频列表 大约 40 个
  • 如何从堆栈帧中获取泛型参数的类型?

    我们应该通过工厂实例化我们的实体 因为它们在客户端和服务器上的设置不同 我想确保情况确实如此 但无法完全使其发挥作用 public interface IEntityFactory TEntity Create
  • jQuery basic:当单击该行的按钮时,如何删除该行?

    tableid tbody last append html 这会动态创建表行 每个新创建的行都有一个 删除 按钮 现在 如果我单击删除按钮 该行将被删除 我怎样才能做到这一点 提前致谢 buttonSelector live click
  • C++ 编译器如何确保不同但相邻的内存位置可以安全地在不同线程上使用?

    可以说我有一个结构 struct Foo char a read and written to by thread 1 only char b read and written to by thread 2 only 现在据我了解 当两个线
  • R-paste() 函数中的新行[重复]

    这个问题在这里已经有答案了 使用函数时如何插入新行paste http stat ethz ch R manual R patched library base html paste html或者 R 中连接字符串的任何函数 关于这个主题有
  • Ollydbg 1.10“返回用户模式”不起作用

    我尝试学习 莉娜为新手倒车 https tuts4you com download php view 125 当出现一些麻烦时 我使用 ollyDbg 启动 Pixtopian Book 然后尝试使用 MessageBox 来显示有关未注册