Exe-nin içərisindəki kodların açılması.

salam! Mən bilmək istəyirəmki exe faylını açıb içərisində dəyişiklik etmək üçün hansı proqram lazımdı. Və ya bunu başqa cür necə etmək mümkündür.

Verilmiş cavablar və yazılan şərhlər (2 cavab var)

ahmed (2012-02-27 09:20:35)
Exe faylı daha dəqiq desək .exe sonluğu ilə bitən fayllara windows sistemlərində icraolunabilən fayllar - yəni proqram faylları işarə olunur. Əslində faylın adının hansı sonluqla bitməsinin bir əhəmiyyəti yoxdur, bu sadəcə işarəetmədir. Əsas ikili faylın formatıdır. Proqramın ikili faylı kompilyator tərəfindən yaradılır və özündə ikili formada prosessor instruksiyaları, məlumatlar, simvollar cədvəli, proqram başlığı və digər məlumatlar saxlayır. Proqram fayllarının daxili strukturunu örgənmək və orada istənilən dəyişili eləmək mümkündür. Bunun üçün assembler dili, prosessor arxitekturası və müvafiq əməliyyatlar sistemini bilmək tələb olunur. GNU/Linux sistemlərində proqram faylları ilə işləmək üçün gdb, obdump, strip, nm, hexdump v.s. proqramlardan istifadə olunur. Misal üçün prog1 proqramının hansı hissələrdən təşkil olunduğunu örgənmək üçün objdump -h prog1 əmrini daxil edə bilərik. Sadə bir init proqramı üzərində test apara bilərik. [ferid@fedora tmp]$ objdump -h init init: file format elf64-x86-64 Sections: Idx Name Size VMA LMA File off Algn 0 .text 00000027 00000000004000b0 00000000004000b0 000000b0 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 1 .data 00000010 00000000006000d8 00000000006000d8 000000d8 2**2 CONTENTS, ALLOC, LOAD, DATA [ferid@fedora tmp]$ Proqramın .text hissəsinə (instruksiyalar) baxmaq istəsək aşağıdakı əmri daxil etməliyik: [ferid@fedora tmp]$ objdump -d init init: file format elf64-x86-64 Disassembly of section .text: 00000000004000b0 : 4000b0: 48 c7 c0 04 00 00 00 mov $0x4,%rax 4000b7: 48 c7 c3 01 00 00 00 mov $0x1,%rbx 4000be: 48 c7 c1 d8 00 60 00 mov $0x6000d8,%rcx 4000c5: 48 c7 c2 0e 00 00 00 mov $0xe,%rdx 4000cc: cd 80 int $0x80 4000ce: 48 c7 c0 01 00 00 00 mov $0x1,%rax 4000d5: cd 80 int $0x80 [ferid@fedora tmp]$ Qeyd eliyim ki, bu sadə bir proqram idi, hansı ki icra edəndə ekranda salam dunya sətrin çap edir. [ferid@fedora tmp]$ ./init Salam dunya [ferid@fedora tmp]$ Bu proqramların Windows versiyası da olmalıdır, amma windowsda əsas sazlama proqramların hansı olduğunu deyə bilmərəm, MS Visual Studionun da sazlama (debugger) proqramı var. GNU/Linux proqramlarının daxili strukturu barədə ətraflı məlumatı 64-bit ELF Object File Specification sənədindən və Professional Linux Kernel Architecture kitabının 4-cü paraqrafından Vir tual Process Memory əldə edə bilərsən.

Ruslan Butdayev (2012-02-26 23:33:06)
Bu suala artıq cavab verilib Exe Faylının açılması

Mövzu üzrə bənzər suallara da baxa bilərsiniz.

I386 faylında dəyişiklik

Təcili Sual

Windows XP(sp3) əməliyyat sistemi üçün “Explorer.exe” problemini həll etməyin hansı yolu var?

Delphidən EXE faylı düzgün işə düşmür.

Decompile files

Proqramda səhv