Подтвердить что ты не робот

Многим проектам необходимо использовать 1 файл SNK

Я использую Visual Studio 2008, и у меня есть решение, которое содержит несколько проектов. У меня есть 1 snk, чтобы подписать мои сборки, и это живет в папке с решениями.

Я связал snk с каждым из моих проектов, но теперь, когда я пытаюсь подписать мой проект с помощью связанного snk, я не могу найти файл snk с диалоговым окном файла.

Я пропустил здесь шаг?

Solution
   > Solution Folder
       MyKey.snk
   > Project X
       > _LinkedFiles
           MyKey.snk (physical file doesn't appear here but shows in VS)
       > ...
4b9b3361

Ответ 1

Ну, здесь не так много ответов, но я нашел решение, с которым мне было удобно. У меня есть ProductAssemblyInfo, который живет в папке решения, но связан с каждым проектом, как показано ниже.

Solution
   > Build (Solution Folder)
       MyKey.snk
       ProductAssemblyInfo.cs
   > Project X
       > _LinkedFiles
           ProductAssemblyInfo.cs
       > ...

ProductLevelAssembly содержит следующую строку:

[assembly: AssemblyKeyFile("../../Build/MyKey.snk")]

Таким образом, ключевой файл никогда не копируется в каждый проект, но каждая сборка все еще подписана ключом.

Ответ 3

Не связывайте его, просто создавайте его. Если вы восстановите SNK, вам нужно будет скопировать его во все проекты снова, но вероятность того, что это нужно, ОЧЕНЬ низко. Фактически, мы изменяем только SNK при изменении основных номеров версий.

Также, когда вы связываете файл, вы связываете его в файл решения, не создавая копию, которая редактирует оба места одновременно. Диалоговое окно просмотра покажет только файлы, которые существуют на диске.