Как выполнить одну строку машинного кода из приложения в Windows? - PullRequest
0 голосов
/ 24 марта 2019

Я думаю, что это странный вопрос, после поиска в Интернете я не смог найти ничего, что было бы ближе к ответу на этот вопрос.

У меня есть приложение Windows, после запуска оно получает от пользователей ввод, представляющий собой одну строку машинного кода x86, и выполняет его, а затем показывает результаты (например, Регистрация содержимого).Так как пользовательский ввод является случайным, нет возможности предварительно скомпилировать его до запуска приложения.Я хочу, чтобы машинный код выполнялся на реальном оборудовании, а не на программном компоненте эмулятора x86 (написание эмулятора x86 само по себе является сложной задачей, я стараюсь избегать этого).

Я обнаружил динамическую загрузку, но, похоже, вам нужно скомпилировать эту одну строку машинного кода в библиотеку, прежде чем ее можно будет загрузить, слишком много работы только для одной строки машинного кода.Я также думаю о безумной идее - порождать поток или запускать процесс с фиктивным исполняемым кодом и изменять исполняемый код с помощью машинного кода, введенного пользователем, но я не уверен, выполнимо ли это.Так что мой вопрос - это какой-нибудь способ добиться этого?

Спасибо.

...