ユーザ用ツール

サイト用ツール


windows:visualstudio

Visual Studio 2019

Visual Studio 2019

Visual Studio 2019 のダウンロード

Visual Studio Installer の実行

ダウンロードした vs_community__1505233704.1563396169.exe を実行する。
Visual Studio 2019 Installer 001

「ASP.NET と Web 開発」を選択する。
Visual Studio 2019 Installer 002

「Python 開発」を選択する。
Python のインストール Windows 編 でインストール済みの為、以下のチェックを外す。

Python miniconda
Python Web サポート
Python 3 64-bit (3.7.3)

Visual Studio 2019 Installer 003

「.NET デスクトップ開発」を選択する。
Visual Studio 2019 Installer 004

「C++ によるデスクトップ開発」を選択する。
Visual Studio 2019 Installer 005

[インストール] をクリックする。

Visual Studio 2019 Installer 006

コンピュータを再起動する。
Visual Studio 2019 Installer 007

Visual Studio Installer の自動化

オフラインインストール用のレイアウトを %USERPROFILE%\Visual Studio 2019 Downloads に作成する。
Visual C++、Python 開発環境を構築する例。

> cmd /k ""%USERPROFILE%\vs_community.exe" --layout "%USERPROFILE%\Visual Studio 2019 Downloads" --add Microsoft.Component.MSBuild --add Microsoft.VisualStudio.Component.VC.Redist.14.Latest --add Microsoft.VisualStudio.Component.VC.ATL --add Microsoft.VisualStudio.Component.VC.CMake.Project --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 --add Microsoft.VisualStudio.Component.Windows10SDK.18362 --add Microsoft.VisualStudio.Component.VC.ATLMFC --add Microsoft.VisualStudio.Component.VC.Llvm.Clang --add Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset --add Microsoft.Component.PythonTools --includeRecommended --lang en-US ja-JP --wait"

オフラインインストールの実行。

> cmd /k ""%USERPROFILE%\Visual Studio 2019 Downloads\vs_community.exe" --passive --wait"

以下は vs_community.exe のヘルプである。

Visual Studio コマンド ライン

使用法: vs_community.exe [コマンド [オプション]]

コマンド ライン コマンド 説明
modify インストールされている製品を変更します。
update インストールされている製品を更新します。
repair インストールされている製品を修復します。
uninstall インストールされている製品をアンインストールします。

コマンド ライン オプション 説明
--installPath <ディレクトリ> インスタンスが動作するインストール ディレクトリ。install コマンドの場合、これはインスタンスがインストールされる場所です。他のコマンドの場合、これは以前にインストールされたインスタンスがインストールされた場所です。
--productId <ID> インストールするインスタンスの製品の ID。これは install コマンドで必須です。--installPath が指定されている場合、他のコマンドでは無視されます。
--layout <ディレクトリ> オフライン インストール キャッシュを作成するためのディレクトリを指定します。
--verify このオプションは、--layout スイッチと共に使用します。オフライン キャッシュ ディレクトリに見つからないペイロードがないかどうか、およびそれらが有効であるかどうかを確認します。
--fix このオプションは、--layout スイッチと共に使用します。これは "--verify" スイッチと同じ有効性チェックを行うとともに、特定された問題を修正します。
--clean <カタログ マニフェストへのファイル パス> [<カタログ マニフェストへのファイル パス> ...] このオプションは、--layout スイッチと共に使用します。オフライン キャッシュ ディレクトリをクリーンし、指定されたカタログ マニフェストで見つかったすべての古いパッケージを削除します。
--lang <言語-ロケール> [<言語-ロケール> ...] これは、--layout スイッチと共に使用されます。オフライン インストール キャッシュが作成される言語を指定します。サポートされている言語ロケールについては、下の完全な一覧を参照してください。
--add <ワークロードまたはコンポーネント ID>[<ワークロードまたはコンポーネント ID> ...] これは、インストールに追加される成果物 (グループ、ワークロード、またはコンポーネント) を定義します。コマンド ラインで複数回表示されることがあります。
成果物の必須コンポーネントがインストールされます。ただし、推奨コンポーネントまたはオプション コンポーネントはインストールされません。--includeRecommended および/または --includeOptional を使用して、追加のコンポーネントをグローバルに制御できます。よりきめ細かく制御する場合は、";includeRecommended" および/または ";includeOptional" を artifactId ("--add Workload1;includeRecommended" または "--add Workload2;includeOptional;includeRecommended" など) に追加することができます。
install コマンドと modify コマンドでは省略可能です。update、repair、および uninstall コマンドでは無視されます。
--remove <ワークロードまたはコンポーネント ID> [<ワークロードまたはコンポーネント ID> ...] これは、インストールから削除される成果物 (グループ、ワークロード、またはコンポーネント) を定義します。コマンド ラインで複数回表示されることがあります。install コマンドと modify コマンドでは省略可能です。update、repair、および uninstall コマンドでは無視されます。
--all 製品のすべてのワークロードとコンポーネントをインストールするかどうか。
--includeRecommended インストールされているすべてのワークロードの推奨コンポーネントが含まれます。ただし、オプション コンポーネントは含まれません。ワークロードは --allWorkloads または --add のいずれかで指定されます。
--includeOptional インストールされているすべてのワークロードのオプション コンポーネントが含まれます。ただし、推奨コンポーネントは含まれません。ワークロードは --allWorkloads または --add のいずれかで指定されます。
--quiet, -q インストールの実行中にいずれのユーザー インターフェイスも表示しません。
--passive, -p ユーザー インターフェイスを表示しますが、ユーザーからの対話式操作は要求しません。
--norestart 存在する場合、--passive または --quiet を指定したコマンドは、マシンを自動的に再起動しません (必要な場合)。--passive と --quiet のどちらも指定されない場合、これは無視されます。
--locale <言語-ロケール> インストーラーのユーザー インターフェイスの表示言語を変更します。設定は保持されます。
--nickname <名前> これは、インストールされた製品に割り当てるニックネームを定義します。名前は 10 文字を超えることができません。
--help, --?, -h, -? パラメーターの使用法を表示します。

詳細なコマンド ライン オプション 説明
--channelId <ID> インストールするインスタンスのチャネルの ID。これは install コマンドで必須です。--installPath が指定されている場合、他のコマンドでは無視されます。
--channelUri <URI> チャネル マニフェストの URI。これは install コマンドで使用できます。他のコマンドでは無視されます。
--installChannelUri <URI> インストールに使用するチャネル マニフェストの URI。--channelUri (--installChannelUri が指定されている場合に指定する必要がある) で指定された URI が更新プログラムの検出に使用されます。更新プログラムを使用しない場合は、引数なしで --channelUri を指定する必要があります。これは install コマンドで使用できます。他のコマンドでは無視されます。
--installCatalogUri <URI> インストールに使用するカタログ マニフェストの URI。指定した場合、チャネル マネージャーは、インストール チャネル マニフェストの URI を使用する前に、この URI からカタログ マニフェストをダウンロードしようとします。このパラメーターは、オフライン インストールをサポートするために使用され、レイアウトのキャッシュが既にダウンロードされた製品カタログとともに作成されます。これは install コマンドで使用できます。他のコマンドでは無視されます。
--in <パス> 応答ファイルへの URI またはパス。
--addProductLang <言語-ロケール> これは、インストール対象の成果物 (グループ、ワークロード、またはコンポーネント) の言語を定義します。コマンド ラインで複数回表示されることがあります。install コマンドと modify コマンドでは省略可能です。update、repair、および uninstall コマンドでは無視されます。存在しない場合、インストールではマシンのロケールが使用されます。
--removeProductLang <言語-ロケール> これは、削除対象の成果物 (グループ、ワークロード、またはコンポーネント) の言語を定義します。コマンド ラインで複数回表示されることがあります。install コマンドと modify コマンドでは省略可能です。update、repair、および uninstall コマンドでは無視されます。
--wait プロセスは、インストールが完了するまで待機してから、終了コードを返します。これはインストールの自動化に役立ちます。インストールの自動化では、インストールの完了を待ち、インストールからのリターン コードを処理する必要があります。

言語-ロケール 言語
cs-CZ チェコ語
de-DE ドイツ語
en-US 英語
es-ES スペイン語
fr-FR フランス語
it-IT イタリア語
ja-JP 日本語
ko-KR 韓国語
pl-PL ポーランド語
pt-BR ポルトガル語 - ブラジル
ru-RU ロシア語
tr-TR トルコ語
zh-CN 中国語 - 簡体字
zh-TW 中国語 - 繁体字

手順の詳細については、 https://go.microsoft.com/fwlink/?LinkID=838246&clcid=0x411 を参照してください。

 


vcpkg コマンド

vcpkg コマンドのインストール

「スタート」の「Visual Studio 2019」より「x64 Native Tools Command Prompt for VS 2019」を起動して、以下のコマンドを入力する。

> git clone https://github.com/Microsoft/vcpkg.git
> cd vcpkg
> bootstrap-vcpkg.bat

vcpkg コマンドの更新

「スタート」の「Visual Studio 2019」より「x64 Native Tools Command Prompt for VS 2019」を起動して、以下のコマンドを入力する。

> cd vcpkg
> vcpkg version
Vcpkg package management program version 2018.11.23-nohash

See LICENSE.txt for license information.

> git pull
> bootstrap-vcpkg.bat
> vcpkg version
Vcpkg package management program version 2019.07.18-nohash

See LICENSE.txt for license information.

wxWidgets のインストール

vcpkg install の前に 英語言語パックのインストール が必要である。

> cd vcpkg
> vcpkg install wxwidgets:x86-windows

その他のインストールできるもの

> cd vcpkg
> vcpkg install boost:x86-windows
> vcpkg install bzip2:x86-windows
> vcpkg install zlib:x86-windows
> vcpkg install gtk:x86-windows
> vcpkg install gtk:x64-windows

ライブラリの更新

更新対象ライブラリの表示

> vcpkg update
Using local portfile versions. To update the local portfiles, use `git pull`.
The following packages differ from their port versions:
    expat:x86-windows                2.2.6 -> 2.2.7
    libjpeg-turbo:x86-windows        1.5.3-2 -> 2.0.2
    liblzma:x86-windows              5.2.4 -> 5.2.4-2
    libpng:x86-windows               1.6.36 -> 1.6.37-2
    tiff:x86-windows                 4.0.10-1 -> 4.0.10-6
    zlib:x86-windows                 1.2.11-3 -> 1.2.11-5

To update these packages and all dependencies, run
    .\vcpkg upgrade

To only remove outdated packages, run
    .\vcpkg remove --outdated

ライブラリの更新

> vcpkg upgrade --no-dry-run
The following packages will be rebuilt:
    expat[core]:x86-windows
    libjpeg-turbo[core]:x86-windows
    liblzma[core]:x86-windows
    libpng[core]:x86-windows
    tiff[core]:x86-windows
  * wxwidgets[core]:x86-windows
    zlib[core]:x86-windows
Additional packages (*) will be modified to complete this operation.
Starting package 1/14: wxwidgets:x86-windows
Removing package wxwidgets:x86-windows...
Removing package wxwidgets:x86-windows... done
Purging package wxwidgets:x86-windows...
Purging package wxwidgets:x86-windows... done
Elapsed time for package wxwidgets:x86-windows: 1.831 s
Starting package 2/14: expat:x86-windows
Removing package expat:x86-windows...
Removing package expat:x86-windows... done
Purging package expat:x86-windows...
Purging package expat:x86-windows... done
Elapsed time for package expat:x86-windows: 34.2 ms
Starting package 3/14: libpng:x86-windows
Removing package libpng:x86-windows...
Removing package libpng:x86-windows... done
Purging package libpng:x86-windows...
Purging package libpng:x86-windows... done
Elapsed time for package libpng:x86-windows: 39.42 ms
Starting package 4/14: tiff:x86-windows
Removing package tiff:x86-windows...
Removing package tiff:x86-windows... done
Purging package tiff:x86-windows...
Purging package tiff:x86-windows... done
Elapsed time for package tiff:x86-windows: 50.63 ms
Starting package 5/14: libjpeg-turbo:x86-windows
Removing package libjpeg-turbo:x86-windows...
Removing package libjpeg-turbo:x86-windows... done
Purging package libjpeg-turbo:x86-windows...
Purging package libjpeg-turbo:x86-windows... done
Elapsed time for package libjpeg-turbo:x86-windows: 49.11 ms
Starting package 6/14: liblzma:x86-windows
Removing package liblzma:x86-windows...
Removing package liblzma:x86-windows... done
Purging package liblzma:x86-windows...
Purging package liblzma:x86-windows... done
Elapsed time for package liblzma:x86-windows: 51.33 ms
Starting package 7/14: zlib:x86-windows
Removing package zlib:x86-windows...
Removing package zlib:x86-windows... done
Purging package zlib:x86-windows...
Purging package zlib:x86-windows... done
Elapsed time for package zlib:x86-windows: 37.51 ms
Starting package 8/14: zlib:x86-windows
Building package zlib[core]:x86-windows...
-- Using cached C:/My_Projects/vcpkg/downloads/zlib1211.tar.gz
-- Extracting source C:/My_Projects/vcpkg/downloads/zlib1211.tar.gz
-- Applying patch cmake_dont_build_more_than_needed.patch
-- Using source at C:/My_Projects/vcpkg/buildtrees/zlib/src/1.2.11-f690224aeb
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Installing: C:/My_Projects/vcpkg/packages/zlib_x86-windows/share/zlib/copyright
-- Performing post-build validation
-- Performing post-build validation done
Building package zlib[core]:x86-windows... done
Installing package zlib[core]:x86-windows...
Installing package zlib[core]:x86-windows... done
Elapsed time for package zlib:x86-windows: 26.36 s
Starting package 9/14: libpng:x86-windows
Building package libpng[core]:x86-windows...
-- Downloading https://github.com/glennrp/libpng/archive/v1.6.37.tar.gz...
-- Extracting source C:/My_Projects/vcpkg/downloads/glennrp-libpng-v1.6.37.tar.gz
-- Applying patch use-abort-on-all-platforms.patch
-- Using source at C:/My_Projects/vcpkg/buildtrees/libpng/src/v1.6.37-802966ac31
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Performing post-build validation
-- Performing post-build validation done
Building package libpng[core]:x86-windows... done
Installing package libpng[core]:x86-windows...
Installing package libpng[core]:x86-windows... done
Elapsed time for package libpng:x86-windows: 32.01 s
Starting package 10/14: libjpeg-turbo:x86-windows
Building package libjpeg-turbo[core]:x86-windows...
-- Downloading https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.0.2.tar.gz...
-- Extracting source C:/My_Projects/vcpkg/downloads/libjpeg-turbo-libjpeg-turbo-2.0.2.tar.gz
-- Applying patch add-options-for-exes-docs-headers.patch
-- Applying patch workaround_cmake_system_processor.patch
-- Using source at C:/My_Projects/vcpkg/buildtrees/libjpeg-turbo/src/2.0.2-3c759cce19
-- Downloading http://www.nasm.us/pub/nasm/releasebuilds/2.14.02/win32/nasm-2.14.02-win32.zip...
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Performing post-build validation
-- Performing post-build validation done
Building package libjpeg-turbo[core]:x86-windows... done
Installing package libjpeg-turbo[core]:x86-windows...
Installing package libjpeg-turbo[core]:x86-windows... done
Elapsed time for package libjpeg-turbo:x86-windows: 1.116 min
Starting package 11/14: liblzma:x86-windows
Building package liblzma[core]:x86-windows...
-- Using cached C:/My_Projects/vcpkg/downloads/xz-mirror-xz-v5.2.4.tar.gz
-- Extracting source C:/My_Projects/vcpkg/downloads/xz-mirror-xz-v5.2.4.tar.gz
-- Applying patch enable-uwp-builds.patch
-- Using source at C:/My_Projects/vcpkg/buildtrees/liblzma/src/v5.2.4-66bfe33102
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Installing: C:/My_Projects/vcpkg/packages/liblzma_x86-windows/share/liblzma/copyright
-- Performing post-build validation
-- Performing post-build validation done
Building package liblzma[core]:x86-windows... done
Installing package liblzma[core]:x86-windows...
Installing package liblzma[core]:x86-windows... done
Elapsed time for package liblzma:x86-windows: 54.62 s
Starting package 12/14: tiff:x86-windows
Building package tiff[core]:x86-windows...
-- Using cached C:/My_Projects/vcpkg/downloads/tiff-4.0.10.tar.gz
-- Extracting source C:/My_Projects/vcpkg/downloads/tiff-4.0.10.tar.gz
-- Applying patch fix-stddef.patch
-- Applying patch cmakelists.patch
-- Using source at C:/My_Projects/vcpkg/buildtrees/tiff/src/4.0.10-229dd2f530
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Installing: C:/My_Projects/vcpkg/packages/tiff_x86-windows/share/tiff/copyright
-- Performing post-build validation
-- Performing post-build validation done
Building package tiff[core]:x86-windows... done
Installing package tiff[core]:x86-windows...
Installing package tiff[core]:x86-windows... done
Elapsed time for package tiff:x86-windows: 1.77 min
Starting package 13/14: expat:x86-windows
Building package expat[core]:x86-windows...
-- Downloading https://github.com/libexpat/libexpat/archive/R_2_2_7.tar.gz...
-- Extracting source C:/My_Projects/vcpkg/downloads/libexpat-libexpat-R_2_2_7.tar.gz
-- Using source at C:/My_Projects/vcpkg/buildtrees/expat/src/R_2_2_7-81297378f7
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Installing: C:/My_Projects/vcpkg/packages/expat_x86-windows/share/expat/copyright
-- Performing post-build validation
-- Performing post-build validation done
Building package expat[core]:x86-windows... done
Installing package expat[core]:x86-windows...
Installing package expat[core]:x86-windows... done
Elapsed time for package expat:x86-windows: 55.99 s
Starting package 14/14: wxwidgets:x86-windows
Building package wxwidgets[core]:x86-windows...
-- Using cached C:/My_Projects/vcpkg/downloads/wxWidgets-wxWidgets-v3.1.2.tar.gz
-- Using source at C:/My_Projects/vcpkg/buildtrees/wxwidgets/src/v3.1.2-38b1831b23
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Performing post-build validation
-- Performing post-build validation done
Building package wxwidgets[core]:x86-windows... done
Installing package wxwidgets[core]:x86-windows...
Installing package wxwidgets[core]:x86-windows... done
Elapsed time for package wxwidgets:x86-windows: 18.4 min

Total elapsed time: 24.14 min

「Please install the English language pack.」が表示される

Warning: The following VS instances are excluded because the English language pack is unavailable.
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
Please install the English language pack.
Could not locate a complete toolset.

英語言語パックのインストール を行うと解消される。

英語言語パックのインストール

Visual Studio Installer を起動して、インストール済みVisual Studio 2019[変更] ボタンをクリックする。
Visual Studio 2019 Language Pack Install 001
言語パックタブの [v] 英語 にチェックを入れて [変更] ボタンをクリックする。
Visual Studio 2019 Language Pack Install 002
言語パックのインストールが開始される。
Visual Studio 2019 Language Pack Install 003
言語パックのインストールが完了したら [起動] ボタンをクリックする。
Visual Studio 2019 Language Pack Install 004

参考文献

Python 仮想環境の利用 (python -m venv [venv_name] の利用)

Visual Studio のソリューションエクスプローラーより [Python 環境] を右クリックし、[環境を追加] をクリックする。
Visual Studio 2019 Python venv 追加 001
既存の環境をクリックして、[環境]<カスタム> を選択する。
Visual Studio 2019 Python venv 追加 002
[プレフィックス パス][…] をクリックして、既存の Python venv フォルダを選択して [追加] ボタンをクリックする。
Visual Studio 2019 Python venv 追加 003
ソリューションエクスプローラーに Python venv が追加されるので、右クリックして [Python パッケージの追加] をクリックする。
Visual Studio 2019 Python パッケージ追加
matplotlib を入力して matplotlib (3.1.1) のインストールをクリックする。
Visual Studio 2019 Python パッケージ追加 matplotlib
出力にインストール状況が表示される。

----- 'matplotlib==3.1.1' をインストールしています -----
Collecting matplotlib==3.1.1
  Downloading https://files.pythonhosted.org/packages/1a/c0/69e3f695d7384012e90be1e16570c08953baae00fd98094179ef87c7d5a2/matplotlib-3.1.1-cp37-cp37m-win_amd64.whl (9.1MB)
Collecting cycler>=0.10 (from matplotlib==3.1.1)
  Downloading https://files.pythonhosted.org/packages/f7/d2/e07d3ebb2bd7af696440ce7e754c59dd546ffe1bbe732c8ab68b9c834e61/cycler-0.10.0-py2.py3-none-any.whl
Requirement already satisfied, skipping upgrade: numpy>=1.11 in c:\users\tomoyan\apacheaibenche\lib\site-packages (from matplotlib==3.1.1) (1.17.0)
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib==3.1.1)
  Downloading https://files.pythonhosted.org/packages/11/fa/0160cd525c62d7abd076a070ff02b2b94de589f1a9789774f17d7c54058e/pyparsing-2.4.2-py2.py3-none-any.whl (65kB)
Collecting kiwisolver>=1.0.1 (from matplotlib==3.1.1)
  Downloading https://files.pythonhosted.org/packages/c6/ea/e5474014a13ab2dcb5056608e0716c600c3d8a8bcffb10ed55ccd6a42eb0/kiwisolver-1.1.0-cp37-none-win_amd64.whl (57kB)
Requirement already satisfied, skipping upgrade: python-dateutil>=2.1 in c:\users\tomoyan\apacheaibenche\lib\site-packages (from matplotlib==3.1.1) (2.8.0)
Requirement already satisfied, skipping upgrade: six in c:\users\tomoyan\apacheaibenche\lib\site-packages (from cycler>=0.10->matplotlib==3.1.1) (1.12.0)
Requirement already satisfied, skipping upgrade: setuptools in c:\users\tomoyan\apacheaibenche\lib\site-packages (from kiwisolver>=1.0.1->matplotlib==3.1.1) (40.8.0)
Installing collected packages: cycler, pyparsing, kiwisolver, matplotlib
Successfully installed cycler-0.10.0 kiwisolver-1.1.0 matplotlib-3.1.1 pyparsing-2.4.2
----- 'matplotlib==3.1.1' を正常にインストールできました -----

Visual Studio 2019 Python パッケージ追加 matplotlib 出力

参考文献

IPython の利用

Visual Studio で IPython を利用するには、ipythonipykernel のインストールが必要である。

> pip install ipython ipykernel


ソリューションエクスプローラー[Python 環境] を右クリックして [全ての Python 環境を表示] をクリックする。
Visual Studio 2019 IPython 001
[v] IPython 対話モードを使用する にチェックを入れてPython 環境右上の [対話型ウィンドウを開く] をクリックする。
Visual Studio 2019 IPython 002
対話型ウィンドウ に以下のコードを入力して Enter を入力する。

import matplotlib.pyplot as plt
import numpy as np
 
x = np.linspace(0, 5, 10)
y = x ** 2
plt.plot(x, y, 'r', x, x ** 3, 'g', x, x ** 4, 'b')

Visual Studio 2019 IPython 003
対話型ウィンドウmatplotlib のグラフが描画される。
Visual Studio 2019 IPython 004

参考文献

NuGet コマンド

NuGet Logo

NuGet とは .NET Framework に対応するフリー・アンド・オープンソースのパッケージマネージャである。かつては NuPack と言う名で知られていたが既にあるソフトウェアパッケージの NUPACK (英語版) との混乱を避けるため変更された。2010年に登場して以来、NuGet はツールとサービスのより大きなエコシステムへと発展してきた。

NuGet は Visual Studio エクステンションとして配布されている。Visual Studio 2012 以降は標準で含まれているほか、SharpDevelop にも統合されている。NuGet はコマンドラインからも利用でき、スクリプトによる自動化も可能である。

NuGet は複数のプログラミング言語に対応し、対応する言語には以下が含まれる。

  • .NET Framework パッケージ
  • CoApp の補助で作成された C++ によるネイティブのパッケージ

NuGet - Wikipedia より

本家: NuGet Gallery | Home
ソースコード: GitHub - NuGet/NuGet.Client: Client Tools for NuGet - including Visual Studio extensions, command line tools, and msbuild support. (Open issues on https://github.com/nuget/home/issues)

ダウンロード

Visual Studio 2019 ではエクステンションとして標準で含まれているが CLI は含まれていないので、以下の方法で NuGet CLI をダウンロードする。
NuGet Gallery | HomeDownloads より nuget.exe v5.2.0 をクリックしてダウンロードする。

インストール

C:\vstools フォルダを作成してダウンロードした nuget.exe を配置する。
タスクバーの「ここに入力して検索」に sysdm.cpl を入力して Enter キーを押す。
「システムのプロパティ」の「詳細設定」タブの[環境変数]ボタンを押して「環境変数」画面を開く。
「環境変数」画面の [システム環境変数] の Path 変数をダブルクリックして、[新規] ボタンを押して C:\vstools を追加する。

コマンドプロンプトより実行する。

> nuget
NuGet Version: 5.2.0.6090
usage: NuGet <command> [args] [options]
Type 'NuGet help <command>' for help on a specific command.

Available commands:

 add               Adds the given package to a hierarchical source. http sources are not supported. For more info, goto
                   https://docs.nuget.org/consume/command-line-reference#add-command.

 config            NuGet 構成値を取得または設定します。

 delete            サーバーからパッケージを削除します。

 help (?)          全般的なヘルプ情報と他のコマンドに関するヘルプ情報を表示します。

 init              Adds all the packages from the <srcPackageSourcePath> to the hierarchical <destPackageSourcePath>. h
                   ttp feeds are not supported. For more info, goto https://docs.nuget.org/consume/command-line-referen
                   ce#init-command.

 install           指定されたソースを使用してパッケージをインストールします。ソースが指定されていない場合、NuGet 構成フ ァイルに定義されているすべてのソースが使用されます。構成ファイルにソースが指定されていない場合
                   、既定の NuGet フィードが使用されます。

 list              指定したソースのパッケージ一覧を表示します。ソースが指定されていない場合、%AppData%\NuGet\NuGet.config に定義されているすべてのソースが使用されます。NuGet.confi
                   g にソースが指定されていない場合、既定の NuGet フィードが使用されます。

 locals            Clears or lists local NuGet resources such as http requests cache, temp cache or machine-wide global
                   packages folder.

 pack              指定された nuspec または project ファイルに基づいて、NuGet パッケージを作成します。

 push              サーバーにパッケージをプッシュして、公開します。
                   NuGet の既定の構成を取得するには、%AppData%\NuGet\NuGet.config を読み込み、ドライブのルートから現在のディレクトリの間にあるすべての nuget.config または
                   .nuget\nuget.config を読み込みます。

 restore           NuGet パッケージを復元します。

 setApiKey         指定されたサーバーの URL の API キーを保存します。URL が指定されていない場合、NuGet ギャラリーの API キーが保存されます。

 sign              Signs a NuGet package with the specified certificate.

 sources           %AppData%\NuGet\NuGet.config に指定されたソースの一覧を管理できます

 spec              新しいパッケージの nuspec を生成します。このコマンドをプロジェクト ファイル (.csproj, .vbproj, .fsproj) と同じフォルダーで実行する場合、トークン化された nusp
                   ec ファイルが作成されます。

 trusted-signers   Provides the ability to manage the list of trusted signers.

 update            パッケージを利用可能な最新バージョンに更新します。このコマンドで、NuGet.exe も更新されます。

 verify            Verifies a signed NuGet package.

詳細については、https://docs.nuget.org/docs/reference/command-line-reference を参照してください

使い方

NuGet を最新に更新するには、以下のコマンドを実行する。

> nuget update -self
https://www.nuget.org/api/v2/ の更新を確認しています。
NuGet.exe 5.2.0 は実行中です。
NuGet.exe は最新です。

参考文献

Visual Studio 用の Mercurial

HgSccPackageDownload より HgSccPackage.vsix をダウンロードして実行する。

MSBuild の Node.js

MSBuild に付属の Node.js は以下のディレクトリに入っている。(パスは通っていない)

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VisualStudio\NodeJs

node.exe, npm.cmd などが存在する。

npm は以下のように実行できる。

> "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VisualStudio\NodeJs\npm"

Visual Studio と VC++ マクロ定義

表記 製品名 他社アプリ
ライブラリの表記
VC++ Version _MSC_VER _MSC_FULL_VER
2019 Visual Studio 2019
Version 16.1.2
VC16 14.21 1921 192127702
2019 Visual Studio 2019
Version 16.0.0
VC16 14.20 1920 192027508
2019 Preview Visual Studio Enterprise 2019 Preview
Version 16.0.0 Preview 2.2
VC16 14.20 1920 192027305
2017 Update 9 Visual Studio 2017
Version 15.9.11
VC15 14.16 1916 191627030
2017 Update 7 Visual Studio 2017
Version 15.7.5
VC15 14.14 1914 191426433
2017 Visual Studio 2017
Version 15.0
VC15 14.10 1910 191025017
2015 Visual Studio 2015 [14.0] VC14 14.0 1900 190023026
2013 Visual Studio 2013 [12.0] VC12 12.0 1800 180021005
2012 Visual Studio 2012 [11.0] VC11 11.0 1700 170050727
2010 Visual Studio 2010 [10.0] VC10 10.0 1600 160030319
2008 Visual Studio 2008 [9.0] VC9 9.0 1500 150021022
2005 Visual Studio 2005 [8.0] VC8 8.0 1400 140050320

Visual Studio 2015 と Visual Studio 2019 の間の C++ バイナリ互換性
2019/05/03

Visual Studio 2013 以前では、バージョンの異なるコンパイラ ツールセットやランタイム ライブラリで構築されたオブジェクト ファイル (OBJ)、スタティック ライブラリ (LIB)、ダイナミック ライブラリ (DLL)、実行可能ファイル (EXE) の間のバイナリ互換性が保証されていませんでした。

Visual Studio 2015 以降では、C++ ツールセットのメジャー番号が 14 になります (Visual Studio 2015 は v140、Visual Studio 2017 は v141、Visual Studio 2019 は v142)。 これは、ランタイム ライブラリといずれかのバージョンのコンパイラでコンパイルされたアプリケーションの両方に、バイナリ互換性があるという事実を反映するものです。 つまり、Visual Studio 2015 でビルドされたサードパーティのライブラリがある場合、Visual Studio 2017 または Visual Studio 2019 でビルドされたアプリケーションからこのライブラリを使用するために再コンパイルする必要はありません。

このルールの唯一の例外として、/GL コンパイラ スイッチでコンパイルされたスタティック ライブラリまたはオブジェクト ファイルは、バイナリ互換性がありません。

サポート対象のさまざまなバージョンの MSVC ツールセットでビルドされたバイナリを混在させると、アプリケーションの実行基盤の Visual C++ 再頒布可能パッケージには、アプリまたはそれが使用するすべてのライブラリのビルドに使用されるツールセットのいずれのバージョンよりも古いものは使用できません。

Visual Studio 2015 と Visual Studio 2019 の間の C++ バイナリ互換性 | Microsoft Docs より

参考文献
_MSC_VERと_MSC_FULL_VERをまとめる - Qiita
Visual Studio 2015 と Visual Studio 2019 の間の C++ バイナリ互換性 | Microsoft Docs
Microsoft Visual C++ - Wikipedia

Visual Studio 2008

テキスト エディタによる列選択

Shift+Altキーを押した状態で↓キーを押す。

テキスト エディタによるスペースの表示

Ctrl+Eキーを押して一旦放してSキーを押す。(メニュー [編集] - [詳細] - [スペースの表示] のショートカットキー)

Visual Studio 2008 Image Library

以下のパスにインストールされる。

C:\Program Files\Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\

既定ブラウザの変更

  1. ソリューション エクスプローラよりブラウザによって表示するプロジェクトを選択する。
  2. メニューの[ファイル] - [ブラウザの選択]をクリックし、「ブラウザの選択」の画面でブラウザを選択して[既定として設定]ボタンをクリックする。

ソース管理の移行

ソース管理プラグインを変更すると、アクティブなソリューションまたはプロジェクトが終了してしまう。
移行を行うためにはソリューションファイルの以下のセクションをエディタなどで削除する。

xxxxxxxx.sln

    GlobalSection(SubversionScc) = preSolution
        Svn-Managed = True
        Manager = AnkhSVN - Subversion Support for Visual Studio
    EndGlobalSection
windows/visualstudio.txt · 最終更新: 2019/09/05 16:32 by ともやん