int buf[10][20];
HWND wnd1;
HANDLE
ID;
DWORD Pid;
int i;
unsigned long len;
long *m_addr; //聯眾俄羅斯方塊的關鍵陣列地址
m_addr = (long *) 0x677d68;
::memset(buf,0,800);
if( (wnd1 = ::FindWindow(NULL,"聯眾俄羅斯方塊(網路版)"))==NULL)
{
AfxMessageBox("聯眾俄羅斯方塊(網路版)未執行!");
return;
}
::GetWindowThreadProcessId(wnd1,&Pid);
ID=::OpenProcess(PROCESS_ALL_ACCESS,false,Pid);
if(ID)
{
::ReadProcessMemory(ID,m_addr,buf,800,&len);//將俄羅斯方塊的資料讀入buf陣列中
for(i=0;i<10;i++)//以下讓最底的4行全滿。
{
if(buf[i][19]==0) buf[i][19]=1;//陣列的值代表不同顏色的方塊
if(buf[i][18]==0) buf[i][18]=2;
if(buf[i][17]==0) buf[i][17]=3;
if(buf[i][16]==0) buf[i][16]=4;
}
::WriteProcessMemory(ID,m_addr,buf,800,&len);//將處理過的值再次寫入俄羅斯方塊中。對方一定死翹翹了。
::CloseHandle(ID);
::BringWindowToTop(wnd1);
}
------------------------------------------------------
這是以前寫的。現在不知俄羅斯方塊升級了沒有。
業餘程式設計,高手莫笑。