Как загрузить .NET 3.5 SP1 с MSBUILD? Следующие найденные инструкции не работают

StackOverflow https://stackoverflow.com/questions/3626672

Вопрос

Я пытаюсь использовать задачу Msbuild GenerateBootstrapper для распространения приложения .NET с рамки без необходимости подключения к Интернету для его установки.

Я нашел много постов, которые все приводят к той же инструкциям здесь:

Включить Samsite для SP1 SP1 .NET Framework 3.5 SP1

После выполнения инструкций я до сих пор не могу генерировать Bootstrapper. Более очевидная проблема, которую я могу видеть, это то, что извлечение файлов из dotnetfx35.exe не извлекает один и тот же список файлов и папок, чем показано в файле Readme (например, папки инструментов не там).

Что я делаю не так? Я следую старым инструкциям?

Ошибки MSBuild следующие:

C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\TOOLS\clwireg.exe' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\TOOLS\clwireg_x64.exe' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\TOOLS\clwireg_ia64.exe' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): warning MSB3165: The value of the 'PublicKey' attribute in '.NET Framework 3.5 SP1' does not match that of file 'C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX35SP1\dotNetFX30\XPSEPSC-x86-en-US.exe'.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): warning MSB3165: The value of the 'PublicKey' attribute in '.NET Framework 3.5 SP1' does not match that of file 'C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX35SP1\dotNetFX30\XPSEPSC-amd64-en-US.exe'.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\dotNetMSP\x86\NetFX2.0-KB948609-v6001-x86.msu' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\dotNetMSP\x86\NetFX3.0-KB948610-v6001-x86.msu' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\dotNetMSP\x64\NetFX2.0-KB948609-v6001-x64.msu' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.
C:\svn\GII\5.1b\Installer\src\Installer\Installer.wixproj(103,5): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\dotNetMSP\x64\NetFX3.0-KB948610-v6001-x64.msu' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.

Любая помощь могла бы быть полезна!

Это было полезно?

Решение

Я решил проблему. Ссылка, предоставленная документацией Microsoft для загрузки полной .NET Framework 3.5 SP1 неверна. Пакет из .NET Framework 3.5 SP1 Полная установка Пакет Есть ли ожидаемые файлы внутри.

Другие советы

Взгляни на это

Всем привет,

Позвольте мне пролить свет на эту проблему.

Мы все еще расследуем, почему открытые ключевые токены фактических файлов отличаются от того, что у нас есть в файлах Product.xml. Излишне говорить, что-то поскользнулось, несмотря на наше тестирование. У вас есть мои извинения за это.

Хорошая новость заключается в том, что Bootstrapper работает довольно хорошо в этой ситуации. Когда мы строим, мы сравниваем цифровую подпись файла на диске в PublicHyToken, перечисленные в Product.xml или Package.xml. Если они разные, то мы используем значение фактического файла на диске, поскольку это то, что будет скопировано и / или размещено в сценарии «То же самое место, что и мое приложение». Таким образом, Bootstrapper работает правильно.

Мы показываем предупреждение по сборке, предупреждению разработчика / строителя, что что-то отличается, чем ожидалось. Это имеет значение в сценарии веб-сайта «Загрузить из веб-сайта компонента», потому что если файл загружается из поставщика компонентов, такой же, как на диске, то загрузка не удастся отказаться от теста сертификата и не установит. К счастью, в этом случае в этом сценарии только файл dotnetfx35setup.exe фактически загружен из Microsoft, и эта клавиша правильная.

Если вы хотите избавиться от предупреждений Building, вы можете обновить свой Publickey в Product.xml со следующим значением:

Используйте это для файлов xpsepsc *.

Я надеюсь, что это поможет уточнить вещи, и мы собираемся продолжать следовать. Спасибо за то, что сообщили об этом, это поможет нам удержать больше людей.

Искренне,

David Guyer Program Manager - Настройка проектов Visual Studio

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top