Ręczne wywołanie zapisu gry z odpalonego programu

0

Do bardzo starej gry (10 lat) chciałbym dorobić programik, który by zapisywal mi postęp co 5 minut. Niestety nie wiem jak zabrać się za znalezienie adresu funkcji, która zapisuje.

Jakieś narzędzie do zapisu stacktrace od danego momentu), odpalić i wywołać save, a potem przeanalizować czy jak to znaleźć?

Próbowałem CheatEnginem zatrzymać program, tylko wtedy wiesza się UI i nie kliknę w zapis by prześledzić co się dzieje.

0

Możesz spróbować podpiąć się np. GDB.

0

10 lat to nie taka stara. :) Przynajmniej dla mnie, przez ostanie 20 lat zmieniło się znacznie mniej niż poprzednie 10...
Do rzeczy, jak rozumiem nie masz kodu źródłowego i działasz na Windowsie. Pytanie czy jest skrót klawiszowy na szybki zapis? Jeśli tak, może wystarczy użyć winapi żeby wysłać zdarzenie wciśnięcia klawisza do okna z grą.
Jeśli nie, pewnie należałoby ustawić breakpoint na funkcjach zapisu do pliku i obejrzeć stos wywołań. Tak powinieneś w miarę łatwo zlokalizować właściwą funkcję

1

@viader: a sekwencja klawiszy? Też styknie. A jak nie, to bym na początek użył jakiegoś analizatora plików PE (używam pev, ale to bardziej linuksowa zabawka, na Windows są okienkowe narzędzia), żeby wydobyć listę używanych funkcji i wybrać te, które pasują najbardziej.

0

Dobra pokombinowałem, znalazłem sekwencję klawiszy, która to ogarnia to super ;) Ma jedną wadę, może zatrzymać przerwać ruchu, ale jestem w stanie to przeżyć na razie.

Przydałoby się wykrywanie czy gra jest aktywna by użyć tych klawiszy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1