Rozmiar piku exe w stałej po kompilacji ?

Odpowiedz Nowy wątek
2013-05-12 12:04
ziutek7
0

Witam, w jaki sposób zrobić tak aby po kompilacji rozmiar pliku exe znalazł się w stałej ?? czy jest to do zrobienia ? czy nie da się ?

Pozostało 580 znaków

2013-05-12 12:48
h4ud4y
0
ziutek7 napisał(a):

Witam, w jaki sposób zrobić tak aby po kompilacji rozmiar pliku exe znalazł się w stałej ?? czy jest to do zrobienia ? czy nie da się ?

Po zbudowaniu pliku EXE pobierz jego rozmiar, znajdź stałą gdzie to ma być i tam zapisz.

Pozostało 580 znaków

2013-05-12 13:25
0

Nieco rozszerzając:
Jeżeli kompilacja się zakończy, napisz osobny program, który:
1.Odnajdzie tę stałą w pliku *.exe (bodajże w sekcji .rodata, .rdata lub .text, lecz tego nie jestem na 100% pewien i zależy to od kompilatora (może on w ogóle wyrzucić stałą z kodu)).
2.Podmień wartość na rzeczywisty rozmiar pliku (czyli np.jeżeli stała w pliku znajdować się będzie pod adresem 0x123ABC, to pod ten adres właśnie musisz wpisać rozmiar exe-ka).
3.Enjoy!

Ale znacznie prościej będzie pobrać ten rozmiar do zmiennej w trakcie działania programu.


edytowany 2x, ostatnio: Patryk27, 2013-05-12 13:27

Pozostało 580 znaków

2013-05-13 15:54
0

Co chcesz osiągnąć? Do czego ci to potrzebne?

Pozostało 580 znaków

2013-05-13 16:14
0

Otwórz swój własny plik i wykonaj funkcję GeFileSize ;)


Pozostało 580 znaków

2013-05-13 16:17
0
Patryk27 napisał(a):

1.Odnajdzie tę stałą w pliku *.exe (bodajże w sekcji .rodata, .rdata lub .text, lecz tego nie jestem na 100% pewien i zależy to od kompilatora (może on w ogóle wyrzucić stałą z kodu)).

Można odnaleźć na podstawie unikalnej wartości stałej (a) lub jej otoczenia (b).

a)

  • ustawiasz w kodzie źródłowym wartość stałej np. na 0x123ABC
  • szukasz w pliku EXE takiej stałej (jeśli znaleziona więcej niż raz - to błąd unikalności)
  • zamieniasz ją na nową wartość
  • w programie odwołujesz się do stałej

b)

  • to samo, tylko stała zawarta jest w środku tablicy bajtów, wykorzystanie w kodzie trochę trudniejsze

@Azarien: to najprostsza forma zabezpieczenia przed:

  • błędnie pobranym plikiem
  • wirusem

Oczywiście zabezpieczenie do obejścia, ale lepszy rydz niż nic.


Szacuje się, że w Polsce brakuje 50 tys. programistów
Najprostsza forma zabezpieczenia przed błędnie pobranym plikiem to suma kontrolna - Juhas 2013-05-13 17:27

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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