2010-09-02 77 views
6

我试图使用的MSBuild GenerateBootstrapper任务分配与框架.NET应用程序,而不需要网络连接来安装它。如何使用msbuild引导.NET 3.5 SP1?以下指导内容,不工作

我发现很多帖子,所有导致同样的指示在这里:

Enable Samesite for the .NET Framework 3.5 SP1 bootstrapper

下面的说明后,我仍然无法生成引导程序。我可以看到的更明显的问题是,从dotNetFx35.exe中提取文件不会提取与自述文件中显示的文件和文件夹相同的列表(例如TOOLS文件夹不存在)。

我在做什么错?我遵循旧的指示吗?

的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. 

任何帮助将非常感激!

回答

4

我已经解决了问题。 Microsoft的文档提供的用于下载完整.NET Framework 3.5 SP1的链接不正确。 .NET Framework 3.5 SP1 full install package的软件包内有预期的文件。

+1

我发现除了在Mohsen中提到的3.5SP1修复程序,还需要在Microsoft SDK \ Windows \ v7.0A \ Bootstrapper \ Packages文件夹中包含DotNetFX35和DotNetFX35SP1 – volody 2013-02-04 19:14:18

2

看看这个

您好所有,

让我流下了在这个问题上的一些情况。

仍在调查为什么实际文件 的 公钥令牌是比我们在 product.xml文件不同。不用说,尽管我们的 测试, 滑落。你有我的道歉 那。

的好消息是,引导程序 工作得很好过这种情况。 当我们建立,我们比较的 product.xml或package.xml中列出的文件在磁盘上的 公钥的数字签名 。如果他们的 不同,那么我们使用磁盘上实际文件的值 ,因为这个 是将在“与我的应用程序相同的位置” 方案中复制和/或发布 的内容。这样,引导程序 正常工作。

我们确实展示了构建警告,以提醒 开发人员/构建器 与预期不符。这 具有价值的情况下 “从 组件供应商的网站下载”,因为如果该文件正在从组件供应商下载 相同 的磁盘上,然后下载将 失败证书考试并获得” t 安装。幸运的是,在这种情况下, 在那种情况下只有 dotnetfx35setup.exe文件实际上是 从微软下载,并 关键是正确的。

如果你想摆脱构建 警告,你可以在Product.XML与 下面的值更新 公钥: 3082010A0282010100A2DB0A8DCFC2C1499BCDAA3A34AD23596BDB6CBE2122B794C8EAAEBFC6D526C232118BBCDA5D2CFB36561E152BAE8F0DDD14A36E284C7F163F41AC8D40B146880DD98194AD9706D05744765CEAF1FC0EE27F74A333CB74E5EFE361A17E03B745FFD53E12D5B0CA5E0DD07BF2B7130DFC606A2885758CB7ADBC85E817B490BEF516B6625DED11DF3AEE215B8BAF8073C345E3958977609BE7AD77C1378D33142F13DB62C9AE1AA94F9867ADD420393071E08D6746E2C61CF40D5074412FE805246A216B49B092C4B239C742A56D5C184AAB8FD78E833E780A47D8A4B28423C3E2F27B66B14A74BD26414B9C6114604E30C882F3D00B707CEE554D77D2085576810203010001

将此用于两个XPSEPSC * 文件。

我希望这有助于澄清事情,我们会继续 后续行动。感谢您报告 这个,它会帮助我们让更多的人 免受这种情况的影响。

真诚,

戴维·盖尔项目经理 - 设置 项目的Visual Studio

-1

1对于VS2015,这里是一个解决方案:

  1. 这里下载安装程序: http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe

  2. 提取物/与7zip的或WinRAR和提取contence到一个文件夹

  3. 复制/移动提取的文件夹下的 “WCU \ dotNetFramework” 路径上的一切以开放:

C:\ Program Files文件(86)\微软的Visual Studio 14.0 \ SDK \引导程序\软件包\ DotNetFX35SP1

  • 发布在VS2015
  • +0

    推断引用的文件夹应该是Microsoft Visual Studio 14.0而不是Microsoft Visual Studio 4.0,我测试了这个没有成功。下载的文件与Visual Studio 2015提供的完全一致。在构建时消失了以下警告并重新出现在Publish上:“.NET Framework 3.5 SP1”中'PublicKey'属性的值与文件'C:\ Program文件(x86)\ Microsoft Visual Studio 14.0 \ SDK \ Bootstrapper \ Packages \ DotNetFX35SP1 \ dotNetFX30 \ XPSEPSC-x86-en-US.exe'。 – BillVo 2016-11-01 15:38:11