2010-04-28 289 views
5

我製作了一個使用.NET Framework 3.5 SP1和SQL Server 2008 Express的應用程序。 應用程序很好,現在我要爲此做一個安裝項目。Visual Studio 2010安裝項目問題

當我第一次建立我的安裝程序時沒有問題,因爲所有先決條件都未包含在安裝程序中。

但我想我的安裝程序也安裝.NET 3.5 SP1和SQL SERVER 2008 Express。爲此,我已將安裝項目屬性中的選項從「從以下位置下載先決條件」更改爲「從與我的應用程序相同的位置下載先決條件」。除此之外,我還檢查了上述選項,如.NET 3.5 SP1和SQL Server 2008 Express等。

做完所有這些之後,我再次構建我的項目。這次我得到57錯誤。


  • 錯誤1 先決條件尚未設置爲 '組件供應商的網站' 和 文件 'DotNetFX35SP1 \ dotNetFX20 \ aspnet.msp' 項」 .NET Framework中的安裝位置3.5 SP1'可以 不在磁盤上。請參閱關於 的更多信息。 d:\ MindStrike SETUP \ MindStrike Setup.vdproj MindStrike設置
  • 錯誤2安裝 先決條件的位置還沒有被設置爲 '組件供應商的網站' 和 文件 「DotNetFX35SP1 \ dotNetFX20 \ aspnet_64.msp ' 項目'.NET Framework 3.5 SP1'中的 不能位於磁盤上。請參閱關於 的更多信息。 d:\ MindStrike SETUP \ MindStrike Setup.vdproj MindStrike安裝 錯誤3安裝了 先決條件的位置還沒有被設置爲 '組件供應商的網站',並在 文件 'DotNetFX35SP1 \ dotNetFX20 \ clr.msp' 項目'.NET Framework 3.5 SP1'不能 位於磁盤上。有關更多 信息,請參閱幫助。 d:\ MindStrike SETUP \ MindStrike Setup.vdproj MindStrike設置
  • 錯誤4的安裝 先決條件的位置還沒有被設置爲 '組件供應商的網站' 和 文件 「DotNetFX35SP1 \ dotNetFX20 \ clr_64.msp ' 項目'.NET Framework 3.5 SP1'中的 不能位於磁盤上。請參閱關於 的更多信息。 d:\ MindStrike SETUP \ MindStrike Setup.vdproj MindStrike設置

由於問題將變得太大,所以我只是貼3個錯誤,但總共有57個錯誤。

在此先感謝

回答

8

快速搜索表明你可能想看看這個: http://social.msdn.microsoft.com/forums/en-US/vssetup/thread/d3c1991a-9353-43f0-be82-2dacedc1ceba/


相關信息從2.3.1.1節的VS2008SP1Readme.htm的:

如果在安裝程序項目的 先決條件對話框中選擇了.NET Framework 3.5 SP1引導程序包CT或ClickOnce的 出版,並選擇「從同一 位置爲我的應用程序下載的先決條件」時,下面的建立 錯誤顯示:

系統必備的安裝位置未設置爲「組件 供應商的網站'和項目 'Microsoft.Net.Framework.3.5.SP1'中的文件'dotNetFx35setup.exe'不能位於磁盤上。

要解決此問題:

更新包數據

  1. 打開[程序文件] \微軟的SDK \的Windows \ v6.0A \引導程序\軟件包\ DotNetFx35SP1文件夾或 %ProgramFiles(x86)%\ Microsoft SDKs \ Windows \ v6.0A \ Bootstrapper \ Packages \ DotNetFx35SP1 on x64 操作系統
  2. 在記事本中編輯Product.xml文件。
  3. 以下內容粘貼到該< PackageFiles>元素:
    • <PackageFile Name="TOOLS\clwireg.exe"/>
    • <PackageFile Name="TOOLS\clwireg_x64.exe"/>
    • <PackageFile Name="TOOLS\clwireg_ia64.exe"/>
  4. 查找元素< PackageFile NAME =「dotNetFX30 \ XPSEPSC 86恩-US.exe「並將公鑰 的值更改爲: 3082010A0282010100A2DB0A8DCFC 2C1499BCDAA3A34AD23596BDB6CBE2122B794C8EAAEBFC6D526C232118BBCDA5D2CFB36561E152BAE8F0DDD14A36E284C7F163F41AC8D40B146880DD98194AD9706D05744765CEAF1FC0EE27F74A333CB74E5EFE361A17E03B745FFD53E12D5B0CA5E0DD07BF2B7130DFC606A2885758CB7ADBC85E817B490BEF516B6625DED11DF3AEE215B8BAF8073C345E3958977609BE7AD77C1378D33142F13DB62C9AE1AA94F9867ADD420393071E08D6746E2C61CF40D5074412FE805246A216B49B092C4B239C742A56D5C184AAB8FD78E833E780A47D8A4B28423C3E2F27B66B14A74BD26414B9C6114604E30C882F3D00B707CEE554D77D2085576810203010001
  5. 查找< PackageFile 名稱= 「dotNetFX30 \ XPSEPSC-AMD64烯US.exe」 的元素,改變公鑰 值相同,在步驟4的上方
  6. 保存該產品。xml文件

下載並提取核心安裝文件

  1. 導航到以下網址: http://go.microsoft.com/fwlink?LinkID=118080
  2. 下載dotNetFx35.exe文件到本地硬盤。
  3. 打開命令提示符窗口並切換到您下載的dotNetFx35.exe目錄。
  4. 在命令提示符下鍵入:dotNetFx35.exe /x:。這會將框架文件解壓縮到當前目錄中名爲「WCU」的文件夾。
  5. 複製WCU \ dotNetFramework文件夾的內容並將其粘貼 在%Program Files%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1文件夾 (%ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1在x64 操作系統)。注意:請勿複製WCU \ dotNetFramework文件夾 本身。

    WCU文件夾下應該有5個文件夾,每個文件夾現在都應該出現在DotNetFx35SP1文件夾中。文件夾結構應類似於以下:

    • DotNetFx35SP1(文件夾)
      • dotNetFX20(文件夾
      • dotNetFX30(文件夾)
      • dotNetFX35(文件夾)
      • dotNetMSP(文件夾)
      • TOOLS文件夾)
      • en(或其他一些本地化文件夾)
      • dotNetFx35setup.exe(文件)

你現在可以刪除您在步驟2下載並解壓縮文件和文件夾和4

+0

Windows 8的用戶,也可參見:HTTP: //stackoverflow.com/questions/17865128/how-can-i-extract-net-3-5-on-a-windows-8-pc-for-building-a-setup-package – BillVo 2015-04-08 16:10:54