C # «Assembly.LoadFile» & отключить «DllImport» в загруженной сборке? - PullRequest
0 голосов
/ 22 января 2011

В C # Возможно ли динамически загружать библиотеку .NET во время выполнения, используя что-то вроде System.Reflection.Assembly.LoadFile и отключая загруженную библиотеку из [DllImport("someCPP.DLL", EntryPoint ="someFunction")], чтобы вы не могли вызывать вещи с ++ по соображениям безопасности ??


Причина этого вопроса в том, что я думаю о создании универсального плагина для браузера openSource, который мог бы запускать любой код .NET и отображать такие вещи, как OpenGL или Direct3D или любой другой контент, который вы хотите в браузере, используя .NET. Для этого нужно было бы загрузить загруженную библиотеку .NET, хотя, отключив «DllImport» и, возможно, некоторые другие вещи. Это возможно?

1 Ответ

3 голосов
/ 22 января 2011

Вы можете использовать домен приложения с ограниченными разрешениями безопасности.

Вот общее введение в домены приложений:

А вот конкретное разрешение, связанное с выполнением неуправляемого кода:

...