2013-04-10 1 views
0

У меня есть сторонняя сборка, которая мне нужна для ссылки из подписанной сборки, которую мы создаем. Однако я знаю, как это сделать, какие потенциальные последствия я могу ожидать от подписания их собрания?Есть ли какие-либо оговорки для подписания неподписанной третьей стороны?

Вот некоторая дополнительная информация о сценарии:

  • узел используется, чтобы поговорить со службой третьей стороны, которые мы не строим сами.
  • На этом этапе сборка без знака используется только для получения информации, которая преобразуется в новый формат, который был разработан в доме, поэтому мы не хотим выплачивать поддержку третьей стороне, чтобы получить подписанную сборку поскольку мы постепенно прекращаем его.
  • Эта сторонняя сборка - это просто сборка для приложений .NET для взаимодействия с сторонним API, который не был написан в .NET (я думаю, что он был написан на C/C++).

Основная проблема заключается в том, что если я подпишу сборку, она не сможет взаимодействовать с сервисом/иметь проблемы с использованием собственных сборок, которые установлены третьей стороной, хотя мне никогда не приходилось это делать прежде чем я не знаю, есть ли что-нибудь еще, о чем я должен беспокоиться при подписании сторонних сборок. Любая помощь в расчистке этого приветствуется!

+0

Что случится, если вы попробуете? –

+0

Мы ссылаемся только на стороннюю сборку в очень специфическом сценарии, поэтому я пытаюсь настроить тестовую среду. Тем не менее, это требует много времени, поэтому я надеялся, что может быть четкое сокращение «нет, это не сработает», по крайней мере, чтобы сэкономить время. Я также не просто спрашиваю об этом для моего случая использования, но было бы неплохо узнать о каких-либо «ошибках», которые могут присутствовать при подписании третьей стороны, которую мне нужно будет отслеживать в будущем. –

ответ

0

В моем случае все закончилось тем, что я подписал нашу стороннюю сборку. Тем не менее, есть некоторые вещи, которые при подписании узла третьей стороной вам необходимо принять во внимание:

  • Любых родные вызовов в сборке, вероятно, не в состоянии
  • Изменения сторонних сборок может быть нарушением вашего программного обеспечения соглашение

Это единственные ошибки, о которых мне доводилось до сих пор (при условии, что вы правильно подпишите сборку в первую очередь).

Также как FYI. В моем случае было бы лучше удалить неподписанную DLL из ссылки на проект и использовать Assembly.Load или Assembly.LoadFile для загрузки беззнаковой сборки из подписанного.