首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >由于ERROR_ACCESS_DENIED,CreateRemoteThread失败

由于ERROR_ACCESS_DENIED,CreateRemoteThread失败
EN

Stack Overflow用户
提问于 2012-12-21 04:51:23
回答 2查看 4.7K关注 0票数 0

我正在尝试学习dll注入的基础知识,所以我根据我在网上找到的代码创建了一个非常简单的hello-world类型的DLL和一个注入器。我找不到任何开箱即用的东西,所以我不得不做一些调整。

Injection CodeDLL Code

我在64位windows上运行这些程序。我正在使用Visual Studio 2010进行编译。注入器是一个win32控制台应用程序,dll也是win32。我正在尝试将我的代码注入到现有的记事本进程(也是32位)中。所有这些都是在Windows7 x64上运行的。

当我运行注入器时,每次CreateRemoteThread都会失败,GetLastError返回5(即ERROR_ACCESS_DENIED)。我已经确认了dll路径是正确的(尽管将其更改为伪路径会产生相同的行为),并且我已经确认使用Cheat Engine将该路径写入到记事本内存中的正确地址。我在这方面遇到了困难,因为我不确定如何进一步调试这个问题。

可能导致CreateRemoteThread失败的原因是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-24 02:25:14

问题是notepad.exe在64位windows中是一个64位进程,而我试图注入一个32位进程。

票数 3
EN

Stack Overflow用户

发布于 2015-12-28 16:39:58

我也遇到了同样的问题。我的情况是:

  1. 我的系统是64位的,记事本也是64位的。
  2. 但注入器是32位进程。

我的解决方案是将系统目录中的64位记事本替换为32位记事本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13980270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档