天天看點

vs2010打包釋出注意事項

    終于OK了,真是怕搞不定這個東西,感謝網絡上面願意分享技術的大牛們。

    雖然有大牛們的文檔和詳細的說明,但是還是糾結了2天才完成我自己的一個第一個Windows Server的打包和釋出。

    其實,在上一篇轉載的bolg就已将介紹的比較詳細了,這裡就主要就是記錄我出現問題的部分和如何解決的。

第一點:

錯誤: 系統必備元件的安裝位置未設定為“元件供應商的網站”,并且無法在磁盤上找到項“.NET Framework 3.5 SP1”中的檔案“DotNetFX35SP1\TOOLS\clwireg.exe”。有關詳細資訊,請參見幫助。 

錯誤: 系統必備元件的安裝位置未設定為“元件供應商的網站”,并且無法在磁盤上找到項“.NET Framework 3.5 SP1”中的檔案“DotNetFX35SP1\TOOLS\clwireg_x64.exe”。有關詳細資訊,請參見幫助。 

錯誤: 系統必備元件的安裝位置未設定為“元件供應商的網站”,并且無法在磁盤上找到項“.NET Framework 3.5 SP1”中的檔案“DotNetFX35SP1\TOOLS\clwireg_ia64.exe”。有關詳細資訊,請參見幫助。 

錯誤: 系統必備元件的安裝位置未設定為“元件供應商的網站”,并且無法在磁盤上找到項“.NET Framework 3.5 SP1”中的檔案“DotNetFX35SP1\dotNetFX20\aspnet.msp”。有關詳細資訊,請參見幫助。 

解決方案:

1.要下載下傳.NET Framework 3.5完全包(下載下傳位址如下:) 

http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe 

2.使用winrar或者其他解壓工具,将已經下載下傳的dotnetfx3.5解壓縮,解壓完了之後,将會看到一個WCU的檔案夾 

3. 将解壓縮的 WCU/dotNetFramework 下的内容全部copy到C:\Program Files\MicrosoftDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX35SP1這個目錄下面。 

4.打開C:\ProgramFiles\MicrosoftSDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX35SP1這個目錄找到Product.xml 檔案如圖: 

5.用記事本打開,将下面内容copy進去如圖: <PackageFile Name="TOOLS/clwireg.exe" /> <PackageFile Name="TOOLS/clwireg_x64.exe" /> <PackageFile Name="TOOLS/clwireg_ia64.exe" />  

再找到<PackageFileName=”dotNetFX30\XPSEPSC-x86-en-US.exe” 這行與 <PackageFile Name=”dotNetFX30\XPSEPSC-amd64-en-US.exe” 這行,并将這兩行的 PublicKey 原本的值改成以下的值 ( 請注意複制的時候不要複制到空格符 ):  

3082010A0282010100A2DB0A8DCFC2C1499BCDAA3A34AD23596BDB6CBE2122B794C8EAAEBFC6D526C232118BBCDA5D2CFB36561E152BAE8F0DDD14A36E284C7F163F41AC8D40B146880DD98194AD9706D05744765CEAF1FC0EE27F74A333CB74E5EFE361A17E03B745FFD53E12D5B0CA5E0DD07BF2B7130DFC606A2885758CB7ADBC85E817B490BEF516B6625DED11DF3AEE215B8BAF8073C345E3958977609BE7AD77C1378D33142F13DB62C9AE1AA94F9867ADD420393071E08D6746E2C61CF40D5074412FE805246A216B49B092C4B239C742A56D5C184AAB8FD78E833E780A47D8A4B28423C3E2F27B66B14A74BD26414B9C6114604E30C882F3D00B707CEE554D77D2085576810203010001 最後儲存Product.xml。 

6. 下載下傳 dotnetfx35langpack_x86zh-CHS.exe和dotnetfx35langpack_x64zh-CHS.exe 

下載下傳位址分别為: 

http://download.microsoft.com/download/7/7/b/77b96978-c805-4674-a9b0-43351e86b41f/dotnetfx35langpack_x86zh-CHS.exe 

http://download.microsoft.com/download/7/7/b/77b96978-c805-4674-a9b0-43351e86b41f/dotnetfx35langpack_x64zh-CHS.exe 

7.下載下傳好後,找到C:\Program Files\Microsoft 

SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX35SP1下面的” 

zh-Hans”檔案夾,進入此檔案夾,建立dotNetFX35檔案夾,再在dotNetFX35

檔案夾下建立x86和x64檔案夾 把下載下傳好的檔案分别copy到這二個檔案夾如圖: 

第二點:

就是重寫完成安裝之後執行的操作:

 using System;

using System.Collections;

using System.Collections.Generic;

using System.ComponentModel;

using System.Configuration.Install;

using System.Linq;

using System.Reflection;

namespace InstallService

{

    [RunInstaller(true)]

    public partial class Installer : System.Configuration.Install.Installer

    {

        public Installer()

        {

            InitializeComponent();

        }

        public static void Main()

        protected override void OnAfterInstall(IDictionary savedState)

            base.OnAfterInstall(savedState);

            Assembly asm = Assembly.GetExecutingAssembly();

            string path = asm.Location.Remove(asm.Location.LastIndexOf("\\")) + "\\";

            string arg = " -w " + path + " --install";

            try

            {

                //System.Diagnostics.Process.Start(path + "\\yate-service.exe 

");

                System.Diagnostics.Process.Start(path + "\\yate-service.exe 

", arg);

            }

            catch (Exception my)

                throw new Exception(my.Message);

        } 

    }

}

繼續閱讀