2016-08-01 2 views
0

Мы экспериментируем с обновлением из Visual Studio 2012 до 2015 Единственная ошибка, мы столкнулись вVS2015 Незаконные таблицы в сжатом потоке метаданных

был

xyzRenamed.dll не может быть открыт - Нелегальные таблицы в сжатом поток метаданных.

Мы используем эту поставляемую пользователем api dll в 2012 году на пару лет без проблем. Кто-нибудь знает, почему 2015 год был бы недоволен DLL, в то время как 2012 работал нормально? Любой способ избежать этого?

ответ

0

Оказалось, что клиент обфускал свою DLL недействительной тактикой метаданных. В частности, они использовали ConfuserEx. Кажется, что он отлично работает с VS2012, но VS2015 этого не имел. Вот отчет об ошибках в ConfuserEx по этой проблеме, и в основном это считалось ожидаемым поведением. https://github.com/yck1509/ConfuserEx/issues/313

Мы смогли получить их для восстановления DLL без такого типа запутывания, и он работал нормально.

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

0

Удалить

<protection id="invalid metadata" /> 

линия от CRPROJ файла.

+0

Спасибо. Это должно быть полезно для тех, у кого есть источник для их обфускационной библиотеки. –

Смежные вопросы