先将DLL注入到一个程序内 然后运行Dll中的DLLmainBOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{
switch( dwReason )
{
case DLL_PROCESS_ATTACH :
{
TestDllDlg Dlg;
Dlg.DoModal();
return TRUE;
}
case DLL_PROCESS_DETACH :
{
return TRUE;
}
case DLL_THREAD_ATTACH :
{
return TRUE;
}
case DLL_THREAD_DETACH :
{
return TRUE;
}
default : return TRUE;
}
}

解决方案 »

  1.   

    DoModal()是阻塞的,DoModal()在执行完以前永远不会return,这样会让目标进程以为异常,最简单的方法,你可以开启一个线程,在另一个线程里调用DoModal,这样就异步掉了,不会导致线程阻塞。
      

  2.   

    lz可以参考这个
    http://hi.baidu.com/nwt3297149/item/f669f9c290796d43ac00ef72