在離線環境中安裝Visual Stuido 2017

来源:https://www.cnblogs.com/durow/archive/2018/03/28/8664689.html
-Advertisement-
Play Games

在離線環境中安裝Visual Stuido 2017 0x00 寫在前面的廢話 因為工作上大多數都是在離線環境中進行的,進出離線環境很麻煩,所以之前很長一段時間都在使用VS2010。後來嘗試換了VS2013,一切順利,只要把安裝鏡像拷進去安裝即可。再後面.NET Core 1.0出來後,嘗試在離線環 ...


在離線環境中安裝Visual Stuido 2017

 

0x00 寫在前面的廢話

因為工作上大多數都是在離線環境中進行的,進出離線環境很麻煩,所以之前很長一段時間都在使用VS2010。後來嘗試換了VS2013,一切順利,只要把安裝鏡像拷進去安裝即可。再後面.NET Core 1.0出來後,嘗試在離線環境中安裝VS2015,結果遇到了很多坑。其中最坑的就是安裝過程中會提示xxx文件損壞無法繼續安裝。剛開始真的以為是下載過程中安裝文件損壞,結果重新下載了幾次發現還是提示損壞。然後就到網上去搜索,也沒結果。後來想用VS Code開發也可以,就裝個.NET Core的SDK。結果仍然提示文件損壞,不過這次查到原因,因為離線環境中缺乏安全證書無法自動下載,導致安裝文件驗證通不過,進而提示文件損壞。按照網上教程從有證書的電腦上把證書導出,在離線環境中導入,安裝就正常了,VS2015也正常了。

0x01 下載Visual Studio 2017

點下麵地址下載所需要的版本的安裝程式 https://www.visualstudio.com/zh-hans/downloads 後面假設下載的是:vs_community.exe

0x02 下載離線資料

直接運行vs_community.exe就是線上安裝。
要離線安裝的話需要開個命令行,到vs_community.exe所在目錄。或者在vs_community.exe所在目錄空白處按住shift點右鍵,選擇在此處打開命令行。 然後執行vs_community.exe --layout c:\vs2017layout,即可把離線資料下載至:c:\vs2017layout。如果想下載中文版本可以加入--lang參數:vs_community.exe --layout c:\vs2017layout --lang zh-CN,--lang參數支持的語言列表:
* cs-CZ ,Czech * de-DE ,German * en-US ,English * es-ES ,Spanish * fr-FR ,French * it-IT ,Italian * ja-JP ,Japanese * ko-KR ,Korean * pl-PL ,Polish * pt-BR ,Portuguese - Brazil * ru-RU ,Russian * tr-TR ,Turkish * zh-CN ,Chinese - Simplified * zh-TW ,Chinese - Traditional
如果要全部下載體積是很大的,而且很多功能都用不到。可以在命令行用--add參數選擇要離線的資料。例如我常用的就是Web和Desktop,所以就用下麵命令離線:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional --lang zh-CN

.NET Desktop和Office開發:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.Office --includeOptional --lang en-US

C++ Desktop開發:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended --lang en-US

更多的可選擇組件可參照:https://docs.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-enterprise
--layout參數如果為空則預設為當前目錄,我不喜歡輸入路徑,所以習慣把vs_community.exe剪切到要下載的目錄,shift+右鍵開命令行,--layout參數為空,直接下載到當前目錄。

0x03 導入安全證書

想想之前裝VS2015的經歷現在VS2017太體貼了。下載離線資料的目錄中有個叫`certificates`的目錄,點進去雙擊安裝裡面的安全證書,採用預設配置無腦下一步即可,遇到輸入密碼的地方空著就行。

0x04 安裝Visual Studio 2017

比較建議的方式就是如何離線的就如何安裝。例如我離線時用的:
vs_community.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional --lang zh-CN
那麼安裝時就用:
vs_community.exe --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional
當然也可以直接運行setup.exe

0x05 感受

因為工作大多在離線環境中,所以對各類開發工具離線環境中的使用都比較關心。感覺VS2015是最複雜的一版VS了,最小安裝體積也很大,各種不方便。早期的.NET Core也是,過度依賴nuget,為了在離線環境中使用還得搭個nuget服務(不過這個也沒啥好說的,搭個nuget服務確實方便),再考進來一大堆包。相比之下VS2017好多了。  
更多內容歡迎訪問我的博客:http://durow.vip
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 看圖: 這裡可以看到是二層嵌套!!使用C#如何實現?? 思路:使用list集合實現 → 建立類 → list集合 → 微軟的 Newtonsoft.Json (一款.NET中開源的Json序列化和反序列化) sonXMText類 using System; using System.Collecti ...
  • IEnumerator和IEnumerable 從名字常來看,IEnumerator是枚舉器的意思,IEnumerable是可枚舉的意思。 瞭解了兩個介面代表的含義後,接著看源碼: IEnumerator: IEnumerable: 發現IEnumerable只有一個GetEnumerator函數, ...
  • 因為今天是最後一天了,我趕緊在這次結束前提出一些前一晚上想到的問題 1. 在TDD的循環中有重構,那 DB 也會進行重構嗎? 在TDD 的重構的過程,其實也經常會重構資料庫 , 但重構資料庫這裡有一個很重要的點,是要如何做 DB Migration from : Odd-e CSD Course 經 ...
  • 這篇文章主要來講講c#中的泛型,因為泛型在c#中有很重要的位置,對於寫出高可讀性,高性能的代碼有著關鍵的作用。 一、什麼是泛型? 泛型是 2.0 版 C# 語言和公共語言運行庫 (CLR) 中的一個非常重要的新功能。 我們在編程程式時,經常會遇到功能非常相似的模塊,只是它們處理的數據不一樣。但我們沒 ...
  • 本文總結了在 C# 當中,介面與抽象類的一些異同,來與大家共用。 一、抽象類 (1) 抽象方法只作聲明,而不包含實現,可以看成是沒有實現體的虛方法 (2) 抽象類不能被實例化 (3) 抽象類可以但不是必須有抽象屬性和抽象方法,但是一旦有了抽象方法,就一定要把這個類聲明為抽象類 (4) 具體派生類必須 ...
  • NEST.Repository A simple encapsulation with NEST client for search data form elasticsearch. github API NESTReaderRepository TEntity Get(TKey id); TEnt ...
  • 概述 上一篇 New UWP Community Toolkit 文章中,我們對 V2.2.0 版本的重要更新做了簡單回顧。接下來會針對每個重要更新,結合 SDK 源代碼和調用代碼詳細講解。 本篇我們會針對 XAML Brushes 做詳細分享。 Source: https://github.com ...
  • 錯誤提示:可能會導致迴圈或多重級聯路徑。請指定 ON DELETE NO ACTION 或 ON UPDATE NO ACTION,或修改其他 FOREIGN KEY 約束。 原因:自表連接(同一張表自己連接自己)不允許級聯刪除和級聯更新。 一、sql語句 二、發現 內容如下: USE [Ecolo ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...