Каковы последствия использования небезопасного кода

Я могу найти решение, когда я конвертирую тип переменной "msg" в строку, которая работает. но я не знаю, почему у этого есть проблемный тип объекта.

23
задан Community 23 May 2017 в 12:06
поделиться

3 ответа

Небезопасный код не поддается проверке, таким образом, необходимо знать об этом. В Полной Доверительной среде это не грандиозное предприятие, но если у Вас есть другие среды, которые имеют более ограниченный набор полномочий, затем это могло бы повлиять на Вас там.

6
ответ дан 29 November 2019 в 02:53
поделиться

Можно поместить последствия в два блока.

Первое - то, как это влияет на Вашу среду приложения. Использование небезопасного кода требует той Вашей сборки быть выполненным в полной доверительной среде. Не возможно выполнить в ограниченной среде такой, поскольку бесспорный Нажимают настройки безопасности Once. Причем причина состоит в том, что небезопасный код препятствует тому, чтобы CLR гарантировал безопасность типов. Нажмите Once, хотя без ограничений безопасности не должен иметь проблемы.

Второе - то, что это означает для способа, которым Вы кодируете. Использование небезопасного кода обычно включает указатели использования и, в частности, с помощью них для выполненного усовершенствованного маршалинга через PInvoke. Нет ничего по сути неправильно ни с одним из этих действий все же. Просто требуется значительно больше понимания CLR и маршалинга, чем "безопасный" код. Объектное прикрепление является ярким примером знания, у Вас должно было бы быть твердое схватывание на том, прежде чем Вы начали использовать эти функции.

14
ответ дан 29 November 2019 в 02:53
поделиться

Добавить к ссылке Jared для возражения прикреплению...

При использовании указателей на память доступа непосредственно в C#, Вы уязвимы для CLR, перемещающего объект в памяти во времени выполнения. Это означает, что Ваш указатель может внезапно указать на неправильный раздел памяти. Фиксированное ключевое слово прикрепит объект в памяти так, чтобы этой проблемы можно было избежать.

3
ответ дан 29 November 2019 в 02:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: