大家快来帮小弟我解决这个有关问题啊多谢
大家快来帮我解决这个问题啊,谢谢
WriteProcessMemory(openrocess,pRemoteThread,&idxianguai,128,NULL);提示成员函数不能有&符号,其中&idxianguai是函数名,函数原型为:
void __stdcall CMyDlg::idxianguai(_RemotePara *lpprar)
{
UINT dwid;
dwid=lpprar-> dww1;
UINT Address=0x0057e8b0;
_asm
{
pushad
mov esi,dwid
push esi
mov ecx,DWORD PTR DS:[0x9151c4]
MOV ecx,DWORD PTR DS:[ecx+0x20]
add ecx,0xd4
call Address
popad
}
}
------解决方案--------------------
hoho~ WriteProcessMemory(),楼主写病毒呢?
把 &idxianguai 改成 CMyDlg::idxianguai 试试。
------解决方案--------------------
WriteProcessMemory(openrocess,pRemoteThread,&idxianguai,128,NULL);
改成:WriteProcessMemory(openrocess,pRemoteThread,idxianguai,128,NULL);即可
------解决方案--------------------
楼主的问题来自于获得类的成员函数的指针问题,可以采用如下的方法解决
typedef void (CMyDlg:: *FP)((_RemotePara *);
CMyDlg dlg;
FP fp = dlg.idxianguai;
// 此时,fp中存有dlg的idxianguai函数地址
// 最后
WriteProcessMemory(openrocess,pRemoteThread, fp, 128, NULL);
OK
------解决方案--------------------
void __stdcall CMyDlg::idxianguai(_RemotePara *lpprar)
这个声明成static的试下
------解决方案--------------------
#define GET_FUN(_Fun) ((VOID *)(&(DWORD &)(_Fun)))
这个宏可以满足你的要求
WriteProcessMemory(openrocess,pRemoteThread,&idxianguai,128,NULL);提示成员函数不能有&符号,其中&idxianguai是函数名,函数原型为:
void __stdcall CMyDlg::idxianguai(_RemotePara *lpprar)
{
UINT dwid;
dwid=lpprar-> dww1;
UINT Address=0x0057e8b0;
_asm
{
pushad
mov esi,dwid
push esi
mov ecx,DWORD PTR DS:[0x9151c4]
MOV ecx,DWORD PTR DS:[ecx+0x20]
add ecx,0xd4
call Address
popad
}
}
------解决方案--------------------
hoho~ WriteProcessMemory(),楼主写病毒呢?
把 &idxianguai 改成 CMyDlg::idxianguai 试试。
------解决方案--------------------
WriteProcessMemory(openrocess,pRemoteThread,&idxianguai,128,NULL);
改成:WriteProcessMemory(openrocess,pRemoteThread,idxianguai,128,NULL);即可
------解决方案--------------------
楼主的问题来自于获得类的成员函数的指针问题,可以采用如下的方法解决
typedef void (CMyDlg:: *FP)((_RemotePara *);
CMyDlg dlg;
FP fp = dlg.idxianguai;
// 此时,fp中存有dlg的idxianguai函数地址
// 最后
WriteProcessMemory(openrocess,pRemoteThread, fp, 128, NULL);
OK
------解决方案--------------------
void __stdcall CMyDlg::idxianguai(_RemotePara *lpprar)
这个声明成static的试下
------解决方案--------------------
#define GET_FUN(_Fun) ((VOID *)(&(DWORD &)(_Fun)))
这个宏可以满足你的要求