Создаем exe файл на Java для Windows
Здравствуйте, сегодня попробуем написать простую программу на языке программирования Java, сохраним её в формате “exe”, после чего наша программа будет запускаться на любом компьютере с ОС Windows.
Скачать исходники для статьи можно ниже В компании ISsoft есть несколько вакансий qa engineer — заглядывайте на сайт!
Создадим простенькую программку в формате EXE, которая попросит нас ввести для неё два числа и выведит для нас результат в виде этих же чисел, но только увеличенных на 1.
Приступим к созданию данной программы:
1. Устанавливаем бесплатную программу Eclipse
Скачиваем “Eclipse IDE for Java EE Developers”:
Здесь есть Eclipse как для 32 разрядной операционной системы, так и для 64 разрядной системы.
Как узнать какая у вас система? Наведите правой клавишей мыши на ярлык “Мой компьютер”, выберите пункт “Свойства”:
Скачается zip-архив, если вы попробуете распаковать его встроенным в windows архиватором, то здесь могут возникнуть проблемы – процесс может затянуться на длительное время или вовсе с ошибкой. Лучше всего это сделать с помощью программ WinRAR или 7-zip.
2. Далее устанавливаем Комплект Разработчика Приложений на языке Java – Java Software Development Kit (Java SDK или JDK).
Скачать его (JDK) можно с официального сайта – “oracle.com/technetwork/java/javase/downloads/index.html”
Здесь вам также предложат скачать JDK для различных операционных систем, замечу, что 32 разрядной для windows – вы не найдете, JDK для Windows x32 – можно скачать здесь – Скачать JDK для windows x32 и как его установить
После установки JDK стоит проверить его работу – для этого – откройте командную строку снова (Пуск > Выполнить. В текстовом поле наберите «cmd» и нажмите «Enter».). Наберите команду «javac» (без кавычек, конечно).
Если у вас выводится сообщение как на скриншоте выше, то все нормально.
Если нет и показывается следующее сообщение:
4. Теперь осталось написать простенькую программу на языке программирования JAVA в программе Eclipse.
Для изучения языка программирования Java есть хороший youtube канал – ZhirniToni – “youtube.com/user/ZhirniToni” и в нем есть плейлист “Java для Чайников”, так вот на основе уроков 7, 8 и 14:
Урок 7: “youtu.be/lBE20G5l0YU” Урок 8: “youtu.be/L-Ivs-ZfbT8” Урок 14: “youtu.be/XUJsJ_loOkE”
Конечно же, лучше посмотреть все обучающие видео хотя бы с 1 по 14 урок, чтобы лучше разбираться в коде программы.
Благодаря урокам 7 и 8 у меня в программе Eclipse получилось 2 файла: main.java и reader.java.
Код файла main.java:
Код файла reader.java:
После того как вы напишите программу на Eclips сохранить её аналогично уроку 14, только тип файла нужно выбрать “Runnable JAR file”, а именно, вот так:
– кликаем мышкой на проект, который хотим сохранить:
– далее щелкните правой кнопкой мыши по вашему проекту и нажмите “Export” (Экспорт).
– откройте папку “Java” и дважды нажмите опцию “Runnable JAR file” (исполняемый архив JAR).
– Первое, что вы должны сделать, это выбрать главный класс (класс с основным методом) из выпадающего меню под “Launch configuration” (конфигурации запуска). Во-вторых, выберите “Export destination” (Место экспорта) с помощью кнопки “Browse…” (Обзор) или вручную, вводя месторасположение. И в-третьих, обеспечьте выбор переключателя “Extract required libraries into generated JAR”(Извлечь необходимые библиотеки в созданные JAR) “. И, наконец, нажмите кнопку “Finish” (Готово).
5. А далее сохраним нашу программу на JAVA с помощью программы launch4j в exe файл.
В первом текстовом поле введите или выберите с помощью просмотра место, где исполняемый файл хотите сохранить. Убедитесь, что имя файла имеет “.exe” в конце названия!
Во втором текстовом поле введите или выберите с помощью просмотра файл .jar, ранее экспортированного из Eclipse.
В четвертом текстовом поле с надписью “Icon:” можно выбрать иконку для программы, однако, это не является обязательным, и если его оставить пустым, ваша ОС вернется к своему значку по умолчанию исполняемого файла.
На вкладке “JRE” в верхнем меню выберите “Min JRE version” и введите “1.4.0”. Это гарантирует, что пользователи имеют нужную версию Java для использования вашей программы. Вы можете изменить это, но 1.4.0 является безопасной версией.
Нажмите кнопку передач под названием “Build wrapper” в верхней части экрана.
Программа вместе с exe файлом создаст и файл .xml, дайте ему соответствующее имя и нажмите “Save”. Файл .xml является стандартным, не волнуйтесь об этом. Сразу после создания .xml файла будет создан exe файл.
Способы декомпиляции EXE-файлов
Декомпиляция может быть полезной автору ПО, который потерял исходные коды, или просто пользователям, желающим узнать свойства той или иной программы. Для этого существуют специальные программы-декомпиляторы.
Способ 1: VB Decompiler
Первым рассмотрим VB Decompiler, который позволяет декомпилировть программы, написанные на Visual Basic 5.0 и 6.0.
- Нажмите «Файл» и выберите пункт «Открыть программу» (Ctrl+O).
Найдите и откройте программу.
Декомпиляция должна сразу запуститься. Если этого не произошло, нажмите кнопку «Старт».
По завершении внизу окна появится слово «Декомпилировано». В левой части расположено дерево объектов, а в центральной можно просматривать код.
При необходимости, сохраните декомпилированные элементы. Для этого нажмите «Файл» и выберите подходящий вариант, например, «Сохранить декомпилированный проект», чтобы извлечь все объекты в папку на диске.
Способ 2: ReFox
В плане декомпиляции программ, скомпилированных через Visual FoxPro и FoxBASE+, неплохо себя зарекомендовал ReFox.
- Через встроенный обозреватель файлов найдите нужный EXE-файл. Если его выделить, то справа будет отображаться краткая информация о нём.
Откройте контекстное меню и выберите пункт «Decompile».
Откроется окно, где нужно указать папку для сохранения декомпилированных файлов. После нажмите «ОК».
По окончании появится такое сообщение:
Можно просмотреть результат в указанной папке.
Способ 3: DeDe
А DeDe будет полезна для декомпиляции программ на Delphi.
- Нажмите кнопку «Добавление файла».
Найдите файл EXE и откройте его.
Для запуска декомпиляции нажмите кнопку «Процесс».
При успешном завершении процедуры появится такое сообщение:
В отдельные вкладки будет выведена информация о классах, объектах, формах и процедурах.
Для сохранения всех этих данных откройте вкладку «Project», проставьте галочки рядом с типами объектов, которые нужно сохранить, выберите папку и нажмите «Сделать файлы».
Способ 4: EMS Source Rescuer
Декомпилятор EMS Source Rescuer позволяет работать с EXE-файлами, скомпилированными при помощи Delphi и C++ Builder.
- В блоке «Executable File» нужно указать нужную программу.
- В «Project name» пропишите имя проекта и нажмите «Next».
Выберите необходимые объекты, укажите язык программирования и нажмите «Next».
В следующем окне исходный код доступен в режиме предпросмотра. Осталось выбрать выходную папку и нажать кнопку «Save».
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Краткая история [ править | править код ]
С появлением операционной системы Windows NT 3.1 Microsoft перешла на формат PE. Все более поздние версии Windows, включая Windows 95/98/ME, поддерживают этот формат. Формат сохранил ограниченную поддержку существующего (MZ) для преодоления разрыва между системами, основанными на DOS, и системами NT. Например, заголовки PE/COFF всё ещё включают исполняемую программу MS-DOS, которая по умолчанию является заглушкой, выводящей на экран простое сообщение «This program cannot be run in DOS mode» — «Эта программа не может быть выполнена в режиме DOS» (или подобное). PE продолжает служить изменяющейся платформе Windows. Некоторые расширения включают формат PE.NET (см. ниже), 64-разрядную версию под названием PE32+ (иногда PE+) и спецификацию для Windows CE.
Файл ICO
ICO — это файл изображений, который используется для иконок приложений и ярлыков Windows. Файл ICO содержит одно или несколько изображений с различными размерами и глубиной цвета, поэтому их можно использовать с разным разрешением экрана. Традиционно исполняемые файлы содержат иконку в формате ICO, поэтому они отображаются в меню «Пуск» и на ярлыках на рабочем столе. Операционная система позволяет изменить иконку файла или ярлыка, загрузив ее из другого файла *.ICO, *.EXE, *.DLL.
В Windows 10 есть свои иконки, которые находятся в файлах:
- C:\Windows\system32\shell32.dll
- C:\Windows\system32\imageres.dll
- C:\Windows\system32\moricons.dll
- C:\Windows\explorer.exe
Решено: как распаковать HP SoftPaq БЕЗ его выполнения — Сообщество поддержки HP
Мне нужно распаковать SP59736.exe (Win8 IDT Audio Driver) без его запуска — компьютер HP друга. Я хочу получить распакованный пакет SoftPaq в папке C: \ SWSetup, где он обычно находится, и переустановить его как устаревшее оборудование. Его там нет, но в диспетчере устройств он установлен — та же версия, что и SP59736.exe. В Windows 10 есть широко известная ошибка, из-за которой в аудиодрайвере IDT была удалена панель управления Beats Audio и, возможно, удалена папка SP59736 в C: \ SWSetup.Windows 10 БЛОКИРУЕТ шаг переустановки, ДАЖЕ с удаленным драйвером IDT в диспетчере устройств, запуском SP59736.exe от имени администратора и ВСЕХ режимах совместимости, поэтому он не будет распаковываться. Драйвер HP Win 8.1 также не устанавливается. Я доказал, что мой обходной путь выполнит Legacy Install и вернет Beat’s Audio, но только с распакованным SP59736. Вот несколько ссылок, которые я нашел, но в них СЕРЬЕЗНО не хватает деталей, особенно того, что делать ДО запуска командной строки (PowerShell) sp59736.exe -pdf -s -e «для предотвращения выполнения файла и вмешательства Windows 10.
https://h40434.www3.hp.com/t5/Commercial-PC-Software/FAQ-23-Unpacking-downloaded- SoftPaqs / td-p / 50467 …
https://social.technet.microsoft.com/Forums/en-US/54231a86-56a8-444b-8601-c9a859d4db0f/anyone-else-w. ..
Как команда PowerShell узнает, где найти SP59736.exe, чтобы ее можно было распаковать в папку C: \ SWSetup?
Спасибо — OUgrad
Устранение неполадок UNPACK.EXE (Как загрузить и исправить)
Последнее обновление: 05.06.2020
Файлы Microsoft Office Publisher PNG Unpack, такие как UNPACK.EXE, считаются разновидностью файла Win32 EXE (Неизвестно). Они связаны с расширением EXE, разработанным Microsoft для Microsoft Office 2003.
Первоначальное внедрение UNPACK.EXE, выпущенный в составе Office 2003 для Windows XP 19.08.2003. Согласно нашим данным, эта версия файла является последним обновлением, предложенным Microsoft.
Ниже вы найдете исчерпывающую информацию о файле, инструкции по простому устранению неполадок с файлом EXE и список бесплатных загрузок UNPACK.EXE для каждой доступной версии файла.
Вариант первый
Создание простого исполняемого файла выполняется командой вида
DevLinker.LinkExe имяExe-файла := список модулей~
Для нашего примера команда будет выглядеть так:
DevLinker.LinkExe dos test.exe := Kernel+ Log Files Dialog Math Strings WinConsole TestExe~
Параметр dos перед именем файла указывает на необходимость создания консольного приложения. Для обычной программы никаких параметров указывать не надо. Файл будет создан в рабочем каталоге блэкбокса.
Полученная нами программа при запуске не выдаст ничего. Для того, чтобы она заработала, необходимо добавить пару строк:
MODULE TestExe; IMPORT Log; PROCEDURE Do*; BEGIN Log.String("Test."); Log.Ln END Do; BEGIN Do END TestExe.
Это связано с тем, что при исполнении exe, созданного командой DevLinker.LinkExe, выполняются все секции BEGIN всех перечисленных модулей. После того, как последний модуль отработает, вызываются все секции CLOSE, только в обратном порядке.
См. также: Console, модуль ConsoleTest.
Как установить пароль на архив 7-Zip
Для примера приведу последовательность действий в архиваторе 7-Zip и для операционной системы Windows XP.
Итак, в Проводнике через контекстное меню выбираем
7-ZIP — ДОБАВИТЬ К АРХИВУ
Откроется окно, где вы можете задать разные параметры архива, в том числе и пароль. Для установки пароля в группе ШИФРОВАНИЕ в поле ВВЕДИТЕ ПАРОЛЬ задайте любой пароль и нажмите кнопку ОК (см. рис.).
После создания архива у вас в той же папке, где был ваш ЕХЕ-файл, появится файл имя_файла.zip . Вот его то теперь вы можете попробовать отправить по почте. Только не забудьте сообщить получателю письма пароль, который вы установили на архив, иначе он не сможет его открыть.
Большинство почтовых сервисов отправят такое письмо. Но не Гугл. Гугл по уровню маразма в области безопасности пошёл дальше остальных. Поэтому вы увидите всё то же сообщение о блокировке (см. рис. выше в начале статьи).
Если у вас есть ящик на другом сервисе, например, на Мэйле или Яндексе, то лучше не заморачиваться и отправить письмо с архивом через эти сервисы. Но если вы хотите отправить письмо именно через почту Гугла (например, это ваш рабочий ящик, который знают все ваши клиенты и вы не хотите использовать другую почту), то остаётся третий способ.
Как отправить EXE-файл по электронной почте
Итак, вот основные способы:
- Упаковать программу в архив (на современных почтовых сервисах почти никогда не помогает).
- Упаковать программу в архив с паролем (помогает, но не на всех почтовиках).
- Закачать архив с паролем на файлообменник, а по почте отправить ссылку на файл.
Итак, самый простой способ — это запаковать вашу программу в архив, и попытаться отправить по почте этот архив. Раньше это часто срабатывало. Однако почтовики постоянно совершенствуются (иногда не в ту сторону), и сегодня почти все почтовые сервисы умеют распаковывать или проверять архивы. Следовательно, они понимают, что в архиве находится EXE-файл и точно также блокируют отправку. Либо просто считают архив потенциально опасным, как и ЕХЕ-файл.
Поэтому лучше сразу попробовать второй способ — упаковать вашу программу в архив и установить пароль на архив. У разных архиваторов это делается по разному.
.NET, метаданные и PE-формат [ править | править код ]
Платформа .NET корпорации Microsoft расширила формат PE с помощью функций, которые поддерживают общеязыковую среду исполнения (Common Language Runtime — CLR). Среди дополнений — заголовок CLR и секция данных CLR. После загрузки двоичного файла загрузчик ОС приводит к выполнению CLR через ссылку в таблице импорта PE/COFF. Затем CLR загружает заголовок CLR и секции данных.
Секция данных CLR содержит два важных сегмента: сегмент метаданных и сегмент кода промежуточного языка (IL):
- Метаданные содержат информацию, относящуюся к сборке, включая манифест сборки. Манифест подробно описывает сборку, включая уникальный идентификатор (с помощью хеша, номера версии и т. д.), данные об экспортируемых компонентах, расширенную информацию о типе (поддерживаемую общей системой типов (Common Type System — CTS)), внешние ссылки и список файлов в сборке. Среда CLR широко использует метаданные.
- Код промежуточного языка (Intermediate Language — IL) — абстрактный, независимый от языка код, который удовлетворяет требованиям общего промежуточного языка (Common Intermediate Language — CIL) .NET CLR. Термин «промежуточный» относится к природе кода IL, обладающего межъязыковой и кроссплатформенной совместимостью. Этот промежуточный язык, подобный байт-кодуJava, позволяет платформам и языкам поддерживать общую среду .NET CLR. IL поддерживает объектно-ориентированное программирование (полиморфизм, наследование, абстрактные типы и т. д.), исключения, события и различные структуры данных.
Как отправить EXE-файл почтой, или очередные искусственные препятствия
Вот здесь я уже приводил пример излишней заботы о нашей безопасности. Лично меня такая забота очень сильно бесит. Если выбирать между безопасностью и свободой, то я всё-таки предпочёл бы свободу.
Но человечество развивается так, как развивается. Даже если большинство людей, как и я, предпочитают свободу, условия жизни в обществе нам диктует меньшинство. И это меньшинство решает, что нам можно, а что нельзя.
В частности, владельцы почтовых сервисов предоставляют нам бесплатную почту, но платой за эту бесплатность является безоговорочное принятие их правил. Например, если вы захотите отправить в письме по электронной почте какой-нибудь файл, то это может оказаться весьма затруднительным или даже невозможным.
Структура файлов [ править | править код ]
Файл EXE, создаваемый компоновщиком, состоит из двух частей:
- управляющая информация для загрузчика;
- загрузочный модуль.
Информация для загрузчика, описанная ниже, расположена в начале файла и образует так называемый заголовок. Сразу за ним следует тело загрузочного модуля, представляющее собой копию образа памяти задачи, построенной компоновщиком.
Стандартная часть заголовка имеет следующий формат :
00-01 4D5A — сигнатура файла .EXE; 02-03 Длина образа задачи по модулю 512 (то есть число полезных байт в последнем блоке). Компоновщики версий до 1.10 помещали в это поле 04; если оно имеет такое значение, его рекомендуется игнорировать); 04-05 Длина файла в блоках; 06-07 Число элементов таблицы настройки адресов; 08-09 Длина заголовка в 16-байтных параграфах. Используется для выяснения начала тела загрузочного модуля; 0A-0B Минимальный объём памяти, которую нужно выделить после конца образа задачи (в 16-байтных параграфах); 0C-0D Максимальный объём памяти, которую нужно выделить после конца образа задачи (в 16-байтных параграфах); 0E-0F Сегментный адрес начала стекового сегмента относительно начала образа задачи; 10-11 Значение SP при входе в задачу; 12-13 Контрольная сумма — ноль минус результат сложения без переноса всех слов файла; 14-15 Значение IP (счетчика команд) при входе в задачу; 16-17 Сегментный адрес начала кодового сегмента относительно начала образа задачи; 18-19 Адрес первого элемента таблицы настройки адресов относительно начала файла; 1A-1B Номер сегмента перекрытий (0 для корневого сегмента программы).
Далее следует таблица настройки адресов. Таблица состоит из элементов, число которых записано в байтах 06-07. Элемент таблицы настройки состоит из двух полей: 2-байтного смещения и 2-байтного сегмента, и указывает слова в загрузочном модуле, содержащее адрес, который должен быть настроен на место памяти, в которое загружается задача. Настройка производится следующим образом:
- В области памяти после резидентной части выполняющей загрузку программы строится префикс программного сегмента (PSP);
- Стандартная часть заголовка считывается в память;
- Определяется длина тела загрузочного модуля (разность длины файла 04-07 и длины заголовка 08-09 плюс число байт в последнем блоке 02-03). В зависимости от признака, указывающего загружать задачу в конец памяти или в начало, определяется сегментный адрес для загрузки. Этот сегмент называется начальным сегментом;
- Загрузочный модуль считывается в начальный сегмент;
- Таблица настройки порциями считывается в рабочую память;
- Для каждого элемента таблицы настройки к полю сегмента прибавляется сегментный адрес начального сегмента. В результате элемент таблицы указывает на слово в памяти, к которому прибавляется сегментный адрес начального сегмента;
- Когда таблица настройки адресов обработана, в регистры SS и SP записываются значения, указанные в заголовке, а к SS прибавляется сегментный адрес начального сегмента. В ES и DS записывается сегментный адрес начала PSP. Управление передается по адресу, указанному в заголовке (байты 14-17).
Как создать Гугл-Диск
Третий способ заключается в загрузке архива (лучше именно архива с паролем, а не просто файла) на какой-либо файлообменник и отправке ссылки на этот архив по почте.
В качестве файлообменника может быть, например, Яндекс.Диск, Облако от Мэйла, Гугл.Диск или что-то иное.
Поскольку не все пользователи могут пользоваться Мэйлом и Яндексом (например, на Украине эти сервисы заблокированы), то я приведу пример с Гугл.Диском.
Кратко расскажу, как создать Гугл.Диск.
Сначала вы увидите такую картину:
Здесь выбираете “Для личных целей” и нажимаете “Перейти к Google Диску”. После этого откроется страница, где нужно ввести адрес вашего почтового ящика (ящик у вас уже должен быть, и это должен быть ящик на Гугле, то есть адрес должен иметь вид: ваша_почта@gmail.com ).
Нажимаете кнопку ДАЛЕЕ и при необходимости следуете инструкциям (возможно, придётся ввести пароль от вашего ящика).
Расширение .exe Что за формат файлов?
Формат файла.EXE
представляет собой расширение исполнимых файлов, данный формат применяется в таких операционных системах как: DOS, Windows, Symbian. На самом деле расширение EXE нельзя точно назвать форматом, так как оно соответствует целому ряду различных форматов, что делает его очень удобным инструментом и позволяет запускать на исполнение различные программные компоненты, что в свою очередь облегчает работу как программистам, так и пользователям.
Простыми словами — EXE файл это установочный файл программы или компьютерной игры. Для его открытия программы не нужны…
Мы сталкиваемся с данным форматом в случае работы с различными программами и играми, чаще всего файл с расширением.EXE является установочным файлом, той или иной игры или же программы. Но также файлы этого расширения успешно применяются в операционной системе Windows.
Ещё одной особенностью данного типа файла является то что в нём может содержаться не только программный код (то есть сама программа), но также и целый ряд различных метаданных, например, таких как цифровая подпись, ресурсы, ярлыки и многое другое.
Если посмотреть на структуру файла, то можно выделить две части, первая часть это инструкции к выполнению программы, вторая часть сама программа. Наверняка многие сталкивались с этим, когда запускали такой файл, то на экране возникала инструкция, которая говорила нам что следует делать дальше. Это очень часто можно встретить в различных играх, а также в программах.
Как запустить файл EXE в Windows
Для этого не нужны программы, если у вас компьютер на операционной системе Windows — просто кликните два раза по exe файлу и начнется его установка.
Полноценный самостоятельный exe-файл на основе BlackBox
В русифицированной школьной версии BlackBox есть подсистема «Тренинг», содержащая диалоговое окно «тренажёра по склонению числительных». Однажды по просьбе А. И. Попкова мною (Александр Ильин) был изготовлен exe-файл, который позволял запустить данный тренажёр без установки BlackBox, т.е. достаточно было получить и запустить файл Training.exe. Тренажёр сотоял из единственного модуля Тренинг\Mod\Chals.odc (фигурирует как «ТренингChals» в параметрах команды LinkExe) и единственной диалоговой формы Тренинг\Rsrc\Chals.odc. Ниже приводится последовательность команд для создания Training.exe (всегда выполняйте все команды, иначе Блэкбокс после перезапуска будет работать неправильно из-за подмены модуля Config, об этом ниже):
^Q DevCompiler.CompileThis ТренингConfigToPack ~ ^Q DevLinker.Link Training.exe := National Kernel$+ Files HostFiles HostPackedFiles Math Strings Dates Meta Dialog Services Fonts Ports Stores Converters Sequencers Models Printers Log Views Controllers Properties Printing Mechanisms Containers Documents Windows StdCFrames Controls StdDialog StdApi StdCmds StdInterpreter HostRegistry HostFonts HostPorts OleData HostMechanisms HostWindows HostPrinters HostClipboard HostCFrames HostDialog HostCmds HostMenus TextModels TextRulers TextSetters TextViews TextControllers TextMappers FormModels FormViews FormControllers StdLinks StdMenuTool Init Config ТренингChals 1 applogo.ico ~ ^Q DevCompiler.CompileThis Config ~ ^Q DevPacker.PackThis Training.exe := "Тренинг/Rsrc/MenuToPack.odc" => "System/Rsrc/Menus.odc" "Тренинг/Rsrc/Chals.odc" ~
Для того, чтобы при запуске Training.exe сразу же отображалось окно тренажёра, перед линковкой выполняется подмена стандартного модуля Config путём компиляции модуля ТренингConfigToPack (см. ниже). После линковки стандартный модуль возвращается на место путём компиляции исходного текста оригинального Config. После этого в созданный Training.exe командой DevPacker.PackThis добавляются два файла ресурсов: диалоговая форма «Тренинг/Rsrc/Chals.odc» и файл меню «Тренинг/Rsrc/MenuToPack.odc» (см. ниже). Последний при упаковке переименовывается в «System/Rsrc/Menus.odc», чтобы заменить собой стандартное меню BlackBox.
Модуль Config, находящийся в файле «Тренинг\Mod\ConfigToPack.odc»:
MODULE Config; IMPORT Dialog; PROCEDURE Setup*; VAR res: INTEGER; BEGIN Dialog.Call("StdCmds.OpenToolDialog('Тренинг/Rsrc/Chals', 'Тренажер по склонению числительных')", "", res) END Setup; END Config.
Файл меню «Тренинг\Rsrc\MenuToPack.odc»:
MENU "Файл" "Открыть тренажёр" "" "StdCmds.OpenToolDialog('Тренинг/Rsrc/Chals', 'Тренажер по склонению числительных')" "" "Закончить работу" "" "HostMenus.Exit" "" END
Полученный файл Training.exe имеет размер 1’014’054 байт, т.е. чуть больше 990 Кб, его можно скачать отсюда: zip-архив, 413’944 байта.
Как декомпилировать EXE-файл
К сожалению, Windows не предусматривает в своем инструментарии встроенных инструментов, позволяющих выполнить декомпиляцию, поэтому придется пользоваться только сторонним ПО. Такое ПО может быть полезно как пользователям, которые просто желают получше изучить исходный код той или иной программы, так и разработчикам.
Вариант 1: VB Decompiler
Корректно способен провести декомпиляцию EXE-файлов, написанных и скомпилированных через Visual Basic 5.0 и 6.0. Это самая популярная среда разработки программ для Windows. Сама программа полностью бесплатна и занимает на диске всего несколько мегабайт.
- В верхней части интерфейса кликните по пункту «Файл» и выберите из контекстного меню вариант «Открыть программу». Вместо этого можно воспользоваться сочетанием клавиш Ctrl+O.
- В «Проводнике» отыщите исполняемый файл той программы, декомпиляцию которой вы собираетесь провести. Выделите его и нажмите на кнопку «Открыть», чтобы выполнить загрузку файла в рабочую среду.
- Путь до нужного EXE-файла отобразится в строке «Файл». Нажмите на кнопку «Старт», чтобы запустить процедуру декомпиляции.
- Программа не оповещает о завершении процедуры декомпиляции. О завершении таковой будет свидетельствовать только надпись «Декомпилировано» в нижней левой части окна.
- Для сохранения декомпилированного файла нажмите по кнопке «Файл» в верхнем меню и выберите из выпадающего списка вариант «Сохранить декомпилированный проект». Можете просто воспользоваться сочетанием клавиш Ctrl+S.
Вариант 2: EMS Source Rescuer
Данный декомпилятор корректно работает с файлами, скомпилированными с помощью Delphi и C++ Builder. Работа с другими компиляторами возможна, но официально не поддерживается, поэтому есть риски. Программа распространяется полностью бесплатно.
- Запустите EMS Source Rescuer. Его интерфейс представлен в качестве блоков с шагами. На первом шаге вам требуется указать путь до проекта, который будет декомпилирован. Это можно сделать, нажав на кнопку папки в строке «Executable File».
- Выберите нужный EXE-файл в окошке «Проводника».
- В поле «Project name» пропишите имя декомпилируемого проекта и нажмите «Next».
- На следующем шаге потребуется выбрать язык программирования, используемый в выбранном проекте. Это делается в блоке «Output style». Поставив маркер на нужном месте нажмите «Next».
- Вы перейдете сразу на 3-й шаг. Здесь будет показан исходный код проекта. Ниже выберите папку, в которую будут сохранены исходные файлы, извлеченные из EXE-файла, и нажмите «Save».
Вариант 3: ReFox
ReFox отлично зарекомендовал себя в декомпиляции проектов, созданных через Visual FoxPro и FoxBASE+. Сама программа носит условно-бесплатный характер использования. Есть демонстрационная версия, использование которой бесплатно, но только определенный период времени.
Инструкция по использованию данной программы выглядит так:
- В левую часть интерфейса программы уже встроен обозреватель файлов. Воспользуйтесь им, чтобы найти и открыть нужный EXE-файл. В правой части отображается техническая информация о выбранном элементе.
- Кликните правой кнопкой мыши по выбранному файлу. В контекстном меню выберите пункт «Decompile».
- Появится окошко, в котором будет указана директория декомпилируемого файла. Если там все верно, то нажмите «Ок» для продолжения операции.
- По завершении процесса вы получите соответствующее сообщение. Нажмите там «Ок». Результат можно посмотреть в той папке, которую вы указали во 2 шаге.
Вариант 4: DeDe
Эта программа для декомпиляции не так функциональна и поддерживает только одни язык – Delphi.
- Около самого верхнего поля нажмите на кнопку в виде раскрытой папки. Она отвечает за добавление папки.
- Выберите в «Проводнике» нужный EXE-файл и нажмите «Открыть».
- Чтобы запустить процесс декомпиляции, нажмите на кнопку «Процесс», которая расположена около строки указания проекта.
- При успешном завершении вы получите соответствующее сообщение. Нажмите «Ок» или закройте его.
- Теперь вам осталось сохранить результаты декомпилирования на компьютере. Переключитесь на вкладку «Project».
- Рекомендуется отметить галочками все пункты в блоке «Сохранить Делфи Проект». В строке «Папка проекта» укажите директорию, куда будет выполнено сохранение. Нажмите на кнопку «Сделать файлы», чтобы завершить сохранение.
Представленные декомпиляторы способы выполнить обратное преобразование большинства EXE-файлов, написанных на разных языках программирования. Как видите, в самом процессе, вне зависимости от выбранной программы, нет ничего сложного.