代码之家  ›  专栏  ›  技术社区  ›  gfauchart

Dll注入失败

  •  -3
  • gfauchart  · 技术社区  · 13 年前

    我正在尝试dll注入,我已经尝试了100种方法,但都不起作用, 我现在使用的是windows 7 32位(以避免32/64冲突)。 我使用了网上两个著名的dll注入器(AutoInject和Extreme注入器V2)和一个手工制作的。 我正在试着把盒子放在记事本里(再简单不过了,对吧?) 我还想补充一点,我的窗口是在Vmware下运行的。 这里是我的dll的主目录(使用代码块构建)

    #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 回复  |  直到 13 年前
        1
  •  1
  •   gfauchart    13 年前

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

        2
  •  0
  •   Community Mohan Dere    9 年前

    根据 Howto call MessageBox in dllmain 您不能在DllMain内部调用MessageBox(它的功能受到严格限制)。tenfour建议使用OutputDebugString之类的东西。