last-modified: 2025-07-31 13:57:36
参照トップページ
...Visual C++ 2019は、Microsoftが開発したC++の統合開発環境です。
この開発環境では、 VisualStudioと連携することで、 Windowsや.NET Frameworkなどのプラットフォームに対応した高性能なアプリケーションを開発するためのツールやライブラリを提供します。
VC++は、 ISO規格への対応が遅いのですが、 VisualC++2019では、C++17に完全対応し、C++20の一部の機能もサポートしています。
Windows 7 SP1 の Home Premium、Professional、Enterprise、Ultimate 以降のOSに対応しています。
32ビットOSと64ビットOSどちらもサポートしています。
Visual Studio のパフォーマンスを向上させるための一般的な推奨事項として、使用していない機能を最適化することができます。
例えば、拡張機能やプラグインを無効にすることで、パフォーマンスを向上させることができます。
Visual Studio で拡張機能やプラグインを無効にするには、次の手順に従ってください。
これで、選択した拡張機能やプラグインが無効になります。再度有効にする場合は、同じ手順で 有効 ボタンをクリックしてください。
Visual Studio のバックグラウンドダウンロードを停止する方法がいくつかあります。
一つは、Windows タスクスケジューラーを開いて、「タスクスケジューラーライブラリー > Microsoft > VisualStudio > Updates」 に移動し、「BackgroundDownload」 を右クリックして 無効 にすることです。
また、Visual Studio の設定を変更することでも、 BackgroundDownload.exe の使用量を減らすことができます。
例えば、 「ツール > オプション > 環境 > 製品の更新 > 更新設定 > 更新の自動ダウンロード」 の設定を変更することができます
Visual Studio Installerとは、Visual Studioのインストールやアップデートを簡単に行えるツールです。
Visual Studio 2019 をインストーラからインストールすると、 プログラムメニューから選択して使うことができるようになります。
もしくは、 Visual Studioの上部メニューの「ツール」→「ツールと機能を取得」から起動することもできます。
インストール後も、 個別のコンポーネントの追加インストールや、 個別のコンポーネントの削除を行うことができます。
また、 Visual Studioが正常に動作しない場合や問題が発生した場合に、修復を行うことができます。
修復は、インストール済みのワークロードやコンポーネントを再インストールすることで、問題を解決しようとします。
Visual Studioをアンインストールすることもできます。 削除すると、インストール済みのワークロードやコンポーネントもすべて削除されます。
Visual Studio 2019 からは、 Windows 10 SDK以降を同時にインストールすることができるようになりました。
それ以前のバージョンのSDKは、 Visual Studio 2019 からインストールすることはできず、 単独でWindowsSDKをダウンロードしてきて、 スタンドアローンでインストールする必要があります。
Windows SDKは、32ビットシステムでは「%ProgramFiles%\Windows Kits\10」、 64ビットシステムでは「%PROGRAMFILES(X86)%\Windows Kits\10」へ既定でインストールされます。
インストールフォルダには、 いくつかのサブフォルダがあります(例えば、include、lib、binなど)
インストールされている場所は、 レジストリの「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots」キーの「KitsRoot」,「KitsRoot10」, 「KitsRoot81」などの値から確認することができます。 値の名前はWindowsSDKによってことなります
64ビットOSであれば、 「HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows Kits\Installed Roots」になります。
●ディレクトリ構成抜粋
Windows Kits/ └── 10/ ├── bin/ ├── include/ └── lib/
●役割抜粋
ディレクトリ | 説明 |
bin | 実行可能なビルドツールなどが含まれている |
include | ヘッダーファイルが含まれており、これらのファイルは、Windows APIを使用するプログラムのコンパイル時に必要 |
lib | ライブラリファイルが含まれており、これらのファイルは、Windows APIを使用するプログラムのリンク時に必要 |
Visual Studio 2019 から、 WindowsSDKをインストールした場合、 場所を変更することはできません。 場所を変更したいときは、 WindowsSDK10以降でも単独でSDKをインストールするようにしましょう。
Visual Studio 2019 からインストールしたSDKは、 Visual Studio Installer から削除することができます。
「Visual Studio Installer」→「変更」→上部タブ「個別のコンポーネント」から、 「SDK、ライブラリ、およびフレームワーク」の項にある「Windows 10 SDK」のチェックを外すことで、 アンインストールすることができます。
バージョン2015から大きな変更がありました。
printf 関数などの入出力関数が、 mvcrt.lib などから削除され、 stdio.h でインライン実装されるようになったようです。
そのため、 それ以前のオブジェクトファイルを用いてリンクを行うと、 シンボルエラーとなります。
救済措置として、 legacy_stdio_definitions.lib を同時にリンクすることで、 リンクエラーを回避することができます。
また、 legacy_stdio_definitions.lib をリンクしたときは、 スタートアップルーチンを同時に組み込んでおく必要があります。
スタートアップルーチンを組み込まずにlegacy_stdio_definitions.libを使用しようとすると、リンクエラーとなります。
LNK4210の場合、 リンカの「/Entry」オプションで、 スタートアップルーチンのエントリポイント以外のエントリポイントを強制していないかなど、 スタートアップルーチンが組み込まれないようなことをしていないか確認してください。
コンパイラやリンカの設定は、 プロジェクトのプロパティから行うことができます。
コンパイラの設定は「C/C++」から行うことができます。
リンカの設定は「リンカー」から行うことができます。
デフォルトでセキュリティを向上させるSDLチェックが有効になっているため、 strcpy() などの危険な関数を使っているとコンパイルエラーとなります*1。
もし、 それらの関数を使いたい場合は、 SDLチェックを無効にするか、 「_CRT_SECURE_NO_WARNINGS」マクロを定義しておきます。
ヘッダファイルのインクルード処理の前に定義します。
●エラー C4996 の抑制
#define _CRT_SECURE_NO_WARNINGS #include <string.h>
VisualC++ には、 MLアセンブラやLINKリンカがバンドルされているため、 MASMアセンブリコードをビルドすることができます。
プロジェクトは、 VC++の空のプロジェクトでかまいません
プロジェクトが作成されたら、 「C++ファイル(.cpp)」からC++ソースファイルを追加します。
たとえば、 「main.asm」という名前で追加したとしましょう。
「ソリューションエクスプローラー」の「ソースファイル」から、 右クリックから「プロパティページ」を表示します。
全般から、 「項目の種類」を「カスタム ビルド ツール」に変更します。
すると、左ペインに「カスタム ビルド ツール」という項目が表れます。
これを選択します。
そして、 次の項目を変更します。
カスタムビルドツールは、 DebugビルドやReleaseビルドごとに設定できます。
Releaseビルドの変更をするときは、 プロパティページの「構成」のプルダウンから切り替えてください