大家快来帮小弟我解决这个有关问题啊多谢

大家快来帮我解决这个问题啊,谢谢
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)))

这个宏可以满足你的要求