Wskaźnik na adres hexadecymalny

0

Mam problem z wydobyciem wartości zmiennej znajdującej się pod adresem 36F11DC4.

#include <iostream>
#include <windows.h>

using namespace std;

int main()
{
    int *wsk = 0x36F11DC4;
    cout << &wsk;
    return 0;
}

Powyższy kod nie działa, pomoże ktoś zrozumieć w czym jest błąd i jak to powinno wyglądać?
Pojawia się error: invalid conversion from 'int' to 'int*' [-fpermissive].

0

Błąd jest w tym, że koncepcyjnie liczba i wskaźnik to różne typy i nie można ich zamiennie stosować. Możesz użyć reinterpret_cast aby zamienić jeden typ na drugi, ale to dość podejrzane - co chcesz osiągnąć?

0

Znalazłem adres zmiennej w procesie programu za pomocą Cheat Engine, chcę się dowiedzieć jaka wartość jest pod tym adresem.

4

Jak to inny proces to musisz pobrać tę wartość za pomocą odpowiedniej funkcji winapi (lub odpowiednika dla innych systemów), wszystkie popularne nowoczesne systemy wirtualizują pamięć procesów.

1

Tak powinno wyglądać przypisanie do wskaźnika adresu podanego z palca

int *wsk = (int*)0x36F11DC4;

A tu dowód, że wskaźnik faktycznie wskazuje na adres - https://onlinegdb.com/SkqB0P26Q

Miałem tu napisać, że tak to się nie uda uzyskać tego co chcesz, ale już @kq mnie ubiegł.

4

Ewentualnie możesz wstrzyknąć swój kod jako bibliotekę do tej aplikacji i uruchomić na niej remotethreada z funkcją załadowania biblioteki.

Z winapi masz openprocess, writeprocessmemory i readprocessmemory do takiego prostego manipulowania pamięcią.
Potem masz jeszcze ntkernel.

0

Pokombinuję z tym winapi.

1
MasterBLB napisał(a):

Tak powinno wyglądać przypisanie do wskaźnika adresu podanego z palca

int *wsk = (int*)0x36F11DC4;

Ja się przyczepię, że lepiej w C++ nie używać rzutowania w stylu C, ponieważ te rzutowanie może prowadzić do niepoprawnych wyników i generować błędy ponieważ nie dokonuje żadnych sprawdzań podczas kompilacji. Np ładnie to powiedzieli tu https://stackoverflow.com/questions/1609163/what-is-the-difference-between-static-cast-and-c-style-casting

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