Во-первых: возможно, это проблема XY: что я действительно пытаюсь решить, так это схему защиты бедняков от шпионажа в нашем исходном коде. Мы используем HALCON (библиотека обработки изображений) в проекте C #; Дело в том, что части HALCON хранятся в виде простого источника и компилируются / собираются DLL только в начале программы, когда вы указываете, где находится источник. Мое намерение состоит в том, чтобы поместить источник в зашифрованном виде на диск и загрузить / расшифровать его в часть памяти при запуске программы до инициализации DLL. Идея состоит в том, чтобы запретить доступ к источнику через файловую систему (подключение к USB-накопителю и копирование) - я знаю, что это довольно слабая форма защиты, если я упускаю какой-то очевидный и превосходный способ, пожалуйста, сообщите.
Я искал RAM-диски, но они не помогают в защите, так как приложение работает круглосуточно. Файлы на основе памяти были бы идеальными, потому что они исчезают, когда приложение закрывается, и должны быть более или менее невидимыми для внешнего мира, но вместо этого я должен дать DLL простой путь к файлу DOS (например, «C: / HALCON / ourproject») файлового потока / дескриптора, поэтому остается вопрос, можно ли (в Windows!) наложить файловую систему на процесс с переходной частью, находящейся в ОЗУ.
Edit:
Я использую интерфейс HDevelop, то есть процедуры HALCON вызываются через объекты HDevProcedure, которые вызывают для процедуры интерпретатор HALCON.