Библиотека для создания независимых окон, исполняемых в Java или Stack Overflow

я не пытаясь скомпилировать мой исходный код в исполняемый файл. Пожалуйста, прочитайте перед маркировкой как дубликат.

С учетом сказанного, я прошу прощения, если этот вопрос был задан ранее. Бесчисленные вопросы «как мне скомпилировать java | C ++ для exe» заполнили все мои поиски.

Я ищу библиотеку, которая облегчает создание исполняемых файлов Windows (.exe). Если быть точным, я хочу иметь возможность генерировать серию инструкций по сборке во время выполнения (они будут очень простыми) и создавать исполняемый файл, который будет их выполнять. Я могу создать сборку самостоятельно; Я просто хотел бы иметь библиотеку, чтобы помочь справиться со всеми заголовками и другими частями файла .exe (я начал изучать Формат переносимых исполняемых файлов но это слишком сложно для меня. Я не ленивый, но как программист высокого уровня, я чувствую, что все это у меня в голове). Конкретная механика библиотеки не важна, если она работает для Java или C ++. Однако Java очень предпочтительна.

Буду признателен за любые знания, относящиеся к любой структуре, которая будет полезна в этом отношении.

1

Решение

Почему бы не кататься самостоятельно? Код выброса для наименьшего общего знаменателя (ЦП). Делая это, вы, вероятно, добавите много к вашему набору навыков. В настоящее время я пишу скрипт-движок и собираюсь представить JIT-компилятор для генерации кода для платформ Windows. Для этого я добавляю списки кода в проекты, чтобы увидеть код сборки, сгенерированный компилятором. Не идеально, я знаю, но дает твердое стартовое направление.

0

Другие решения

Хорошо, так что я закончил поиском вокруг bin папка моей установки MASM32, где я нашел ассемблер: ml.exe, Затем я записываю ассемблер в текстовый файл и вызываю ассемблер, используя: Runtime.exec():

Runtime.getRuntime().exec(
"C:/masm32/bin/ml.exe "        //directory of assembler
+"/coff "                      //create COFF header (needed for Win32)
+"/Bl C:/masm32/bin/link.exe " //directory of linker
+"/Fe src/" + fileName + ".exe " //executable file
+"/Fo src/" + fileName + ".obj " //object file
+ fileName + ".asm");            //assembly file (source)

Пользователь n.m. дал мне идею, но так как они не опубликовали ее как ответ через месяц, я решил просто ответить на нее сам.

0

По вопросам рекламы [email protected]