Я работаю над проектом, связанным с технологиями песочницы.
В настоящее время я пишу программу на C, которая получает небольшую сборку .exe
binary (.NET)
с удаленного веб-сервера. Этот двоичный файл хранится в памяти (никогда не касайтесь диска), и я намерен запустить этот двоичный файл из памяти. Если мой клиент был создан в .NET
, у меня не возникло бы проблемы с этой сборкой из памяти (на самом деле, это много разных способов получить это), но, конечно, это невозможно с помощью C
(не совсем уверен).
Мои вопросы: наличие этой сборки .exe
в адресном пространстве моей программы C
, есть ли способ ее запускать? Есть ли способ разрешить CLR
запустить его? Сначала я решил вызвать powershell, чтобы запустить его оттуда (используя Reflection.Assembly), но в этом случае нужно записать сборку на диск.
В любом случае, без сомнения, лучший и эффективный способ получить это - с помощью клиента .NET
.