[Visual Studio 2012] 在封閉網路下 使用 ClickOnce 部署 必要條件 設定

[Visual Studio 2012] 在封閉網路下 使用 ClickOnce 部署 必要條件 設定

ClickOnce 發佈對桌面應用程式來講真的很方便,用戶在安裝時,必要條件可以檢查用戶端的電腦存不存在,若不存在可以下載並安裝,安裝完後還可以線上自動更新;假設我們今天處在一個封閉的網路,只要選擇『從應用程式的相同位置下載必要條件』,也同樣能享有這些功能。

PS.這個功能在很久之前就有的,不是什麼新玩意兒~

image

 

部署之前我們需要將必要檔案放至以下路徑

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\Bootstrapper\Packages

依我剛剛勾選的項目必須要將檔案放至 DotNetFX40KB2468871 裡,如果資料夾裡沒有必要檔案就會發生錯誤

SNAGHTML9f372aa

 

錯誤訊息如下

image

 

只要將上網搜尋一下把 dotNetFx40_Full_x86_x64.exe 檔案放至 DotNetFX40KB2468871 ,依資料夾的名稱可能還會需要 KB2468871 共三個檔案,我一併 Download 下來

PS.不過 VS2012 似乎只會檢查 dotNetFx40_Full_x86_x64.exe ,不會檢查 KB2468871 的那三個檔案,就算放在正確的資料夾,VS也不會幫你上傳。

 

這時候再次按下發佈就能成功
PS.下圖是我為了測試而偷懶使用,請注意安全性~

image

 

只要發佈成功,在 IIS 管理員裡就能看到,VS已經幫我們把必要條件的檔案傳好了

SNAGHTMLa265845

 

但是,還缺三個檔案
NDP40-KB2468871-v2-IA64.exe
NDP40-KB2468871-v2-x64.exe
NDP40-KB2468871-v2-x86.exe

SNAGHTMLa27edd9

 

什麼時候會發現錯誤呢?當用戶端使用你提供的網址線上安裝時,才會檢查到檔案不存在無法下載,這時候我們只要手動將缺的檔案傳,用FTP到服務器即可。

SNAGHTMLd2e097a

 


在用戶端執行的畫面

image

 

image

image

image

 

錯誤出現了!!!

An error occurred downloading the following resource:
http://yao-win8/Demo/DotNetFX40KB2468871/NDP40-KB2468871-v2-x86.exe

只要將缺少的檔案放到伺服器就可以了。

image

 


若是勾選.NET 3.5 SP1

SNAGHTMLa5b1677[4]

 

得先下載http://www.microsoft.com/zh-tw/download/details.aspx?id=25150

然後解壓縮,解壓結構就像下圖,把以下資料 copy 到 C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\Bootstrapper\Packages\DotNetFX35SP1

SNAGHTMLa5d6b54

 

就像下圖。

SNAGHTMLa5e764c

 

 


.NET 3.5 Client  的 Offline 比 SP1 還要大
http://www.microsoft.com/en-us/download/details.aspx?id=5007

 

離線版就小很多了
http://www.microsoft.com/zh-tw/download/details.aspx?id=21

若有謬誤,煩請告知,新手發帖請多包涵


Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET

Image result for microsoft+mvp+logo