Dll注射失败

时间:2013-03-25 20:37:47

标签: c windows dll-injection

我正在尝试进行dll注入,我尝试了100种但是没有一种能够工作, 我现在在Windows 7 32位(以避免32/64冲突)。 我在网上找到了两个着名的dll注入器(AutoInject和Extreme注入器V2)和一个手工制作的注入器。 我正在尝试在记事本中使用mesagebox(不能更简单吧?) 我还要补充一点,我的Windows在Vmware下运行。 这里我主要用于我的dll(使用Code-Block构建)

#if BUILD_DLL
#define DLLIMPORT __declspec (dllexport)
#else /* Not BUILDING_DLL */
#define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>

BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
{
  switch (reason)
    {
     case DLL_PROCESS_ATTACH:
       MessageBox (0, "Hello from injected DLL!\n", "Hi", MB_ICONINFORMATION);
       break;
     case DLL_PROCESS_DETACH:
       break;
     case DLL_THREAD_ATTACH:
       break;
     case DLL_THREAD_DETACH:
       break;
    }
   return TRUE;
 }

我不知道现在该尝试什么

2 个答案:

答案 0 :(得分:1)

我找到了解决问题的方法, 如果有人有同样的问题: 只需使用Visual Sudio而不是代码块

答案 1 :(得分:0)

根据Howto call MessageBox in dllmain,您无法在DllMain中调用MessageBox(它可以严格限制您的操作)。 tenfour建议使用类似OutputDebugString的东西。