Witam, w Pythonie napisałem prosty plik (skomplikowany na exe) który deklaruję i wyświetla tablicę 10 cyfr. Teraz chciałem napisać w c++ program który odczyta ten plik exe i zmodyfikuję ostatnią wartość tej tablicy. Mam problem praktyczny z wyszukaniem tych wartości, prosiłbym o wskazówki jak się do tego zabrać.
System zabezpiecza pamięć wykorzystywaną przez program przed dostępem z innych programów, bez poważnych błędów w takowym masz w zasadzie 2 możliwości:
- stworzenie przez plik w c++ środowiska wirtualnego w którym zostanie uruchomiony plik w Pythonie, wtedy będzie miał wspomniany dostęp (bo to jemu a nie plikowi Pythona zostanie przyznana pamięć)
- dekompilacja exe Pythona, podmiana i ponowne stworzenie exe-ka
Mam dziwne wrażenie że oba są poza twoimi możliwościami.
Sig jeśli dobrze zrozumiałem to napisałeś w jaki sposób zmodyfikować program który działa natomiast mi chodzi o modyfikację kodu źródłowego programu i zmianę jego wartości na stałe gdy program jest skompilowany, niekoniecznie uruchomiony. Przykład który podałem powyżej jest tylko do wytłumaczenia o co mi chodzi
Spróbowałeś chociaż hexedytorem znaleźć te swoje liczby w exeku i je nadpisać?
Jeśli były w segmencie data, to tylko otwierasz w c++ jako plik tego exeka, skaczesz pod offset, wpisujesz swoje wartości w miejsce istniejących i zapisujesz.
PretzPrecialy, dzięki o to mi chodziło, temat do zamknięcia.
Odnośnie tematu, pojawił się jeszcze jeden problem, nie mogę wyszukać tych wartości w skompilowanym pliku pythona. Do stworzenia exe użyłem pyinstaller (python w wersji 3.7). Dodam że w takim samym programie napisanym w c++ znalazłem je bez problemu.
Nigdy z niego nie korzystałem, ale przypuszczam że zawiera jakiś kompresor do exe-ków,