哪位大哥给个远线程注入的代码(开TCP侦听),感激!!!!! 我确实想不出如何插入两个线程! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以用钩子插入可以修改注册表app_init项可以CreateRemoteThread 谢谢上面的大哥,有简单的程序吗?主要是插入部分,象面的程序如何插:BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ){ switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: MyMain(); break; case DLL_THREAD_ATTACH: break; case DLL_THREAD_DETACH: break; case DLL_PROCESS_DETACH: break; } return TRUE;}int MyMain(){WSADATA wsadata;........... while (true) //循环等待,如有新的连接请求就接收 { msgsockid = new SOCKET; *msgsockid = accept(sockid, (sockaddr*)&srv_addr,NULL); if (*msgsockid == INVALID_SOCKET) { delete msgsockid; Sleep(2000); } else { //创建用户线程 if (CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)UserThread, msgsockid, 0, NULL) == NULL) { delete msgsockid; Sleep(2000); } } } return 0;}DWORD WINAPI UserThread(SOCKET *UserSockid){.......} 上面的如dll 里的可以用钩子插入比如对指定程序挂wh-getmessage,钩子被调用时你的dll就被隐射到远进程的地址空间了,mymain()也就得以运行。挂钩子我就不说了哈。自己程序里的线程函数可以先openprocess打开你要插入的线程(权限不够的话先提升权限),在里面分配空间writeprocess将你的线程函数和参数写进去,最后createremotethread运行。 我的顾虑是:分配空间writeprocess将线程函数和参数写进去,是要写两次吧,因为我有两个函数,先将MyMain写入,但mymain要调用UserThread,我们知道函数地址,这个时候我就不知道怎样搞了 MDI全局指针的问题。 让人疼痛难受的问题,如何给listbox 控件 增加选项 atl组件调试,返回 80004002错误? 获取受SQL影响的语句的个数 richedit输入框小问题 这个错是怎么回事啊,请教,在线等! 高手,这个难不难呀 关于outlook附件想不通的问题 关于在类中声明函数指针的问题? 有人会用VC做人工智能吗? 图像问题100分 请问谁有DirectX速成教程的光盘源代码吗?
可以修改注册表app_init项
可以CreateRemoteThread
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
MyMain();
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
int MyMain()
{
WSADATA wsadata;
...........
while (true) //循环等待,如有新的连接请求就接收
{
msgsockid = new SOCKET;
*msgsockid = accept(sockid, (sockaddr*)&srv_addr,NULL);
if (*msgsockid == INVALID_SOCKET)
{
delete msgsockid;
Sleep(2000);
}
else
{
//创建用户线程
if (CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)UserThread,
msgsockid,
0,
NULL) == NULL)
{
delete msgsockid;
Sleep(2000);
}
}
} return 0;
}
DWORD WINAPI UserThread(SOCKET *UserSockid)
{
.......}
比如对指定程序挂wh-getmessage,钩子被调用时你的dll就被隐射到远进程的地址空间了,mymain()也就得以运行。挂钩子我就不说了哈。
自己程序里的线程函数可以先openprocess打开你要插入的线程(权限不够的话先提升权限),在里面分配空间writeprocess将你的线程函数和参数写进去,最后createremotethread运行。