我试图工作一个dll注入,我已经尝试了100的东西,但没有一个工作,我现在使用的是32位的windows 7(为了避免32/64冲突)。我使用了两个著名的dll注入器在网上找到(AutoInject和Extreme injector V2)和一个手工制作的。我试图在记事本的消息框(不能更简单,对吗?)我还要补充一点,我的windows是在Vmware下运行的。这里My main for My dll (build with 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;
}
我不知道该怎么做
我找到了解决问题的方法,如果有人有同样的问题:使用Visual studio代替代码块
根据如何在dllmain中调用MessageBox,你不能在dllmain中调用MessageBox(它在你能做的事情上受到严格限制)。tenfour建议使用OutputDebugString。