Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[C++]Hack do gry w DLL, a pointery.


karer

Rekomendowane odpowiedzi

Opublikowano

Witam! Napisałem sobie DLL do gry, wszystko pięknie, ale po wyłączeniu gry adres zmienia się. Czytałem trochę i znalazłem pointera do mojego adresu. Jak go teraz umieścić w kodzie? Dodam, że offset wynosi 20. (tutaj tutek http://coding-gods.org/topic/17-tut-cheat-engine-krok-5-pointers/)

 

 

Mój kod: (ze zwykłym adresem, nie pointerem)

 

#include <windows.h>
//============================= GLOBALS ===============================//
//============================= FUNCTIONS =============================//

void Tartak ( )
{
   //083B8F6C
  *(int*) (0x170EDE70) = 10;
}
void timer ( )
{
for (;
{
Tartak ( );
}
}
//============================= BASE ===================================//
BOOL WINAPI DllMain(HINSTANCE module, DWORD dwReason, LPVOID lpvReserved)
{
  if(dwReason == DLL_PROCESS_ATTACH)
  {
  MessageBoxA(NULL, "Thank you for using my cheats! ;D", "Karer's VIP hook", MB_OK);
  CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)timer, NULL, NULL, NULL);
  }
  return true;
}

Opublikowano

Pointer to zwykły adres pamięci, tylko że taki w którym znajduje się adres do właściwej komórki pamięci, bądź kolejnego pointera.

Będzie to wyglądać mniej więcej tak:

 

DWORD pointer = *(DWORD*) (0xADRES POINTERA); // pobranie wartości wskaźnika
*(DWORD*) (pointer+0x20) = 10; // dodanie offsetu i ustawienie wartości adresu na 10

Twoja stara robi catch the clowny w Game Makerze.

Opublikowano

DWORD* adres = (DWORD*) (*(DWORD*) ((0x083B8F6C) + 20) ); // tu nie jestem pewny czy offset to 20 czy 0x20, ew zmien

 

*adres = 10

Zamykam temat, bo autor nie trzyma poziomu.

....

Polityka forum zakazuję nam zamykać tematy, tylko dlatego, że są na niskim poziomie.

I lold.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...