如何能让我的dll在被调用的进程中卸载掉,而不关闭进程(调用dll的程序不是我写的,但dll是我写的,目前我的程序可以和我这个dll通讯,但不知道怎样让dll卸载)
解决方案 »
- 请问如何用VC实现USB和设备通信?
- 怎么让子窗口移到CTabCtrl里面?
- 请教字符串的小数位数如何数出来
- 关键字:CreateView, CFormview,和msflexgrid,dll
- 关于_outp
- 关于手动加入网络支持的问题
- 菜鸟初学vc,在窗体上放了两个按钮,我想点击第一个按钮,使第二个按钮的文字变成‘您好’,并且字体为宋体20号字,谁能帮忙啊??
- 那位有Visual C++ Version 4.00,小弟急需,谢了先!!!!!
- 控件的焦点问题,怎样判断一个控件当前是否获得了焦点,先谢过……
- GPS接收串口信息
- 看《windows程序设计》(上册)菜单&资源时遇到的问题!!!
- 读chm文档时如何调整字体大小啊?
其实我的dll就是注入进去的。
1.VirtualAllocEx分配远程进程的地址空间中的内容
2.WriteProcessMemory将DLL的路径名复制到1中分配的内存
3.使用GetProcessMemmory获取LoadLibraryA/W的实地址(Kernel32.dll中)
4.CreateRemoteThread函数在远程进程中创建线程,它调用正确的Loadlibrary函数,为它传递第一步分配的内存地址
释放时采用
5.VirtualFreeEx释放1分配的内存
6.使用GetProcAddress函数,获得FreeLibrary函数的实地址
7.使用CreateRemoteThread在远程进程中创建一个线程,它调用FreeLibrary函数,传递远程注入的DLL的HINSTANCE