если, как и я, вы не используете TFS или MSBUILD для сборки, то есть как минимум 2 других способа:
а) запустить sn.exe из скрипта и записать пароль в stdin
см. здесь для примера C #:
примечание: в версии sn.exe для .NET4 кажется невозможным выполнить его как внешний процесс (по крайней мере, в Windows XP) и записать пароль в stdin (я пробовал с python + с C # и sn .exe, похоже, просто завершается, не дожидаясь ввода пароля).
b) используйте sn.exe для повторной подписи пароля, используя уже установленный pfx.
Если вы уже установили файл pfx, тогда вы, возможно, знаете имя контейнера (обычно Visual Studio использует такое имя, как VS_KEY_ABAB1234ABAB1234)
Если, как и я, вы не знаете или не помните имя контейнера, просто переустановите файл pfx:
sn -i myPfxFile VS_KEY_ABAB1234ABAB1234
sn.exe запросит у вас пароль, так как он устанавливает сертификат в файл pfx.
Затем вы можете заставить sn.exe переподписать вашу сборку без запроса пароля:
sn -Rca myAssembly.dll myVSkey
Вышесказанное можно использовать в скрипте сборки, поскольку взаимодействие не требуется: -)
NB Не забудьте проверить, что подпись действительно работает:
sn -v myAssembly.dll