Visual Studio 2008 安裝盤 整合Service Pack 1補丁

原文來自: UPK軟件安全社區 作者: 天下無雪 再此基礎上進行修改

準備工作:
    VS2008原版90天試用光盤
    VS2008SP1補丁 用的是 iso 版的
    VS90SP1-KB957507-v2-CHS-x86.exe (中文智能提示補丁)
    VS90SP1-KB958502-x86.exe (JQuery智能提示補丁)
   
Orca MSI修改工具
    額外需要的文件:
        WcfTestClient.chm 
        SQL Server 2005 Express Edition SP3 (如果你不需要安裝它就不需要這幾個文件)
            SQLEXPR_CHS.EXE      (SQLEXPR32_CHS.EXE 這個文件也在右邊下載)
            SQLEXPR_ADV_CHS.EXE (二者任一,後者是集成了圖形化管理工具的SQL Express版本)
            SQLEXPR32_CHS.EXE

準備安裝文件夾:
     新建工作文件夾:
            e:\vs
            e:\vs\old
            e:\vs\new
            e:\vs\log
            e:\vs\sp1
            e:\vs\needfile
            e:\vs\cmd

     將原版安裝文件複製到:e:\vs\old
     將SP1補丁全部複製到:e:\vs\sp1
     將WcfTestClient.chm、SQLEXPR_CHS.EXE(SQLEXPR_ADV_CHS.EXE)、SQLEXPR32_CHS.EXE、VS90SP1-KB957507-v2-CHS-x86.exe、VS90SP1-KB958502-x86.exe複製到e:\vs\needfile。

 

集成腳本:cmd\Integration.bat (使用時請用管理員身份打開)
 

  1. rem 腳本開始,此處改爲你相應的文件夾  
  2. e:  
  3. cd e:\vs  
  4. echo 展開原版安裝文件……  
  5. msiexec.exe /a %CD%\old\vs_setup.msi TARGETDIR=%CD%\new /L*vx %CD%\log\extract.log  
  6. xcopy "%CD%\needfile\WcfTestClient.chm" "%CD%\new\program files\microsoft visual studio 9.0\common7\ide\" 
  7. echo 開始集成……  
  8. msiexec /p %CD%\sp1\VS90sp1-KB945140-X86-CHS.msp /a %CD%\new\vs_setup.msi /L*vx %CD%\log\patch-KB945140.log  
  9. msiexec /p %CD%\sp1\VC90sp1-KB947888-x86-chs.msp /a %CD%\new\vs_setup.msi /L*vx %CD%\log\patch-KB947888.log  
  10. msiexec /p %CD%\sp1\VC90sp1-KB948484-x86_x64-chs.msp /a %CD%\new\vs_setup.msi /L*vx %CD%\log\patch-KB948484.log  
  11. msiexec /p %CD%\sp1\VC90sp1-KB948560-x86_IA64-chs.msp /a %CD%\new\vs_setup.msi /L*vx %CD%\log\patch-KB948560.log  
  12. xcopy "%CD%\new\Program Files\Microsoft Visual Studio 9.0\CSetupMM" "%CD%\new\setup" /E /H /R /Y  
  13. mkdir %CD%\new\WCU\VCRuntimes  
  14. xcopy "%CD%\sp1\VC_x86Runtime.exe" "%CD%\new\WCU\VCRuntimes\" 
  15. xcopy "%CD%\sp1\VC_x64Runtime.exe" "%CD%\new\WCU\VCRuntimes\" 
  16. xcopy "%CD%\sp1\VC_IA64Runtime.exe" "%CD%\new\WCU\VCRuntimes\" 
  17. mkdir %CD%\new\WCU\SMO  
  18. xcopy "%CD%\sp1\SharedManagementObjects.msi" "%CD%\new\WCU\SMO\" 
  19. xcopy "%CD%\sp1\SQLSysClrTypes.msi" "%CD%\new\WCU\SMO\" 
  20. rem  有說用sp1的SqlPubWizInstaller.exe替換wcu目錄下的  
  21. rem  sqlpubwiz.msi的 但是 下面的xcopy不是執行的這個方法  
  22. xcopy "%CD%\sp1\SqlPubWizInstaller.exe" "%CD%\new\WCU\SQLPub\" /H /R /Y  
  23. xcopy "%CD%\sp1\SSCERuntime-chs.msi" "%CD%\new\WCU\SSCE\" /H /R /Y  
  24. xcopy "%CD%\sp1\SSCEVSTools-chs.msi" "%CD%\new\WCU\SSCE\" /H /R /Y  
  25. xcopy "%CD%\sp1\vstolp20.exe" "%CD%\new\WCU\VS Tools for Office\" /H /R /Y  
  26. xcopy "%CD%\sp1\vstor_lp_zh-CHS_30.exe" "%CD%\new\WCU\VS Tools for Office\" /H /R /Y  
  27. echo 集成dotNet3.5……  
  28. %CD%\sp1\dotnetfx35.exe /extract:%CD%\temp /q  
  29. xcopy "%CD%\temp\WCU\dotNetFramework" "%CD%\new\WCU\dotNetFramework" /E /H /R /Y  
  30. xcopy "%CD%\sp1\dotnetfx35langpack_x64zh-CHS.exe" "%CD%\new\WCU\dotNetFramework\dotNetFX35\x64\" /H /R /Y  
  31. xcopy "%CD%\sp1\dotnetfx35langpack_x86zh-CHS.exe" "%CD%\new\WCU\dotNetFramework\dotNetFX35\x86\" /H /R /Y  
  32. rd %CD%\temp /S /Q  
  33. echo 集成2個補丁……  
  34. %CD%\needfile\VS90SP1-KB957507-v2-CHS-x86.exe /extract:%CD%\temp /q  
  35. msiexec /p %CD%\temp\VS90SP1-KB957507-v2.msp /a %CD%\new\vs_setup.msi /L*vx %CD%\log\patch-KB957507.log  
  36. rd %CD%\temp /S /Q  
  37. %CD%\needfile\VS90SP1-KB958502-x86.exe /extract:%CD%\temp /q  
  38. msiexec /p %CD%\temp\VS90SP1-KB958502.msp /a %CD%\new\vs_setup.msi /L*vx %CD%\log\patch-KB958502.log  
  39. rd %CD%\temp /S /Q  
  40. echo 主程序集成完畢,按任意鍵退出。&pause>nul 


集成SQL Server 2005 Express Edition SP3:cmd\IntegrationSQLESP3.bat

  1. rem 此處改爲你相應的文件夾   
  2. @echo off   
  3. e:   
  4. cd e:\vs   
  5. echo 請選擇操作類型:   
  6. echo 【1】集成SQL Server 2005 Express Edition with Advanced Services SP3   
  7. echo 【2】集成SQL Server 2005 Express Edition SP3   
  8. echo 默認操作爲【1】   
  9. set /p answer=   
  10. if %answer%==1 goto InteADV;   
  11. if %answer%==2 goto Inte;   
  12. :InteADV   
  13. xcopy "%CD%\needfile\SQLEXPR_ADV_CHS.EXE" "%CD%\new\WCU\SSE\SQLEXPR.EXE" /H /R /Y   
  14. goto End   
  15. :Inte   
  16. xcopy "%CD%\needfile\SQLEXPR_CHS.EXE" "%CD%\new\WCU\SSE\SQLEXPR.EXE" /H /R /Y   
  17. goto End   
  18. :End   
  19. xcopy "%CD%\needfile\SQLEXPR32_CHS.EXE" "%CD%\new\WCU\SSE\sqlexpr32.exe" /H /R /Y   
  20. echo SQL Server 2005 Express Edition SP3集成完畢,按任意鍵退出。&pause>nul   
  21. @echo on 



腳本運行完畢後還有幾步要做:

1. Orca軟件把new\vs_setup.msi打開,在File下面增加文件項

File

Component_

FileName

FileSize

 

 

NetFX35_clwireg.exe

NetFX35_clwireg.exe

netfx.exe|clwireg.exe

114200

   

NetFX35_clwireg_ia64.exe

NetFX35_clwireg_ia64.exe

netfx.exe|clwireg_ia64.exe

295448

 

 

NetFX35_clwireg_x64.exe

NetFX35_clwireg_x64.exe

netfx.exe|clwireg_x64.exe

131608

   

 

FileSize
114200
295448
131608
Version  9.0.30519.0 (3個一樣)
Sequence    546 (3個一樣)

2. 修改SqlPubWizInstaller.exe的版本信息
打開new\Program Files\Microsoft Visual Studio 9.0\CSetupMM\baseline.dat和new\Setup\baseline.dat兩個文件,
找到SqlPubWizInstaller.exe把版本信息替換成
DetectFileVersion=2007.100.1600.22

 

3. 直接把VS2008變成正式版本(可選)
打開[new\Program Files\Microsoft Visual Studio 9.0\CSetupMM\setup.sdb]和[new\Setup\setup.sdb]兩個文件,
找到[Product Key]小節,把它下面的25位的序列號改成:
PYHYPWXB3BB2CCMV9DX9VDY8T
如果下面什麼也沒有,就直接加。
說明: 本步是爲了直接把VS2008變成正式版本,當然你也可以不這樣做,那就需要安裝後再輸入序列號,這個序列號是VS2008 Team Suite版本的,如果你的版本不是這個,要換成正確的。

 

4. 免輸序列號(可選)
打開[new\Setup\locdata.ini]文件,找到 [VS Custom]小節,在下面加上:
PIDKEY=PYHYPWXB3BB2CCMV9DX9VDY8T
這個是安裝的時候要求輸入序列號的,如果這裏寫的,安裝的時候,就不需要手動輸入了。

 

到此,Visual Studio 2008 SP1已經集成完畢,

最後可以使用UltraISO 或是 CDImage 生成 ISO 文件

cdimage -lDVD1 -t08/14/2007,16:00:00 -h -n -o -m e:\vs\new D:\VS2008_teamsuit_chs_sp1.iso

-l     (jkl’s l, not i or 1), 卷標名稱
-t    所有文件和目錄的時間戳
-h   包含隱藏文件和目錄
-n   允許長文件名
-o   優化存儲,相同文件保存一次
-m  忽略最大鏡像文件大小  681,984,000 字節

ps:
1 vs2005 整合 sp1 時 需要把卷標名 設爲 DVD1, 不知道 vs2008 是否也需要?
2 不解壓縮,直接用虛擬光驅加載iso文件,能否整合成功?

 

附錄:

xcopy 參數說明

/E -------- 複製目錄和子目錄,包括空的。與 /S /E 相同。可以用來修改 /T。
/R -------- 覆蓋只讀文件。
/H -------- 也複製隱藏和系統文件。
/Y -------- 複製文件審覈設置(隱含 /O)。
/O -------- 複製文件所有權和 ACL 信息。

批處理中的%CD%說明

%CD% -------- 返回當前目錄字符串

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章