コマンドを変更してデバッグを開始します
プログラムの入り口にブレークポイントが設定されており、プログラムが完全に起動した後でデバッグするのが不便な場合は、プロパティ ページのデバッグ タブにあるコマンドオプションを変更して、 exe に変更することができます。次に、そのプロジェクトをスタートアッププロジェクトとして設定し、デバッグスタートアップを実行します。
プロジェクトのプロパティ ページの現在のディレクトリ
プロパティの [全般] タブにある出力ディレクトリや中間ディレクトリなどのパスは、現在のディレクトリへの相対パスとしてプロジェクトファイルが配置されているパスに基づいています。いわゆるプロジェクト ファイルは、.vcxprojファイルです。プロジェクト。
vcxprojファイル: プロジェクトのさまざまなプロパティを説明するプロジェクト プロジェクト ファイル ファイルを変更して再構築した後、VS はプロジェクトを再構築します。
vcxproj.filterファイル: これは、VS で開かれた後のプロジェクトの仮想ディレクトリ構造を定義するビュー ファイルとして理解できます。このファイルを変更した後に再構築する場合、VS はプロジェクトを再構築しません。
vcxproj.userファイル: 複数のユーザーが独自の好みの方法でプロジェクトを構成できるようにするローカライズされたユーザー構成です (プロジェクトを開いたときのフォームの位置や、プロジェクトのコンテンツに関係のないその他の構成など)
マクロ設定
プロパティ ページでは、パスまたはオプションの値として $(xxxx) が表示されることがよくあります。これはマクロです。編集タブでマクロの定義を表示できます。マクロの本当の意味も下に表示されます。記入して使用するのは簡単です。
VC++ ディレクトリ (グローバル)
実行可能ディレクトリ: 実行可能ファイルを検索するディレクトリ。パスは環境変数に対応します。
インクルードディレクトリ: #include<xxxx.h> で xxxx.h のディレクトリを検索します。
ライブラリ ディレクトリ: ディレクトリを検索して .lib ファイルを見つけます。
C/C++(現在のプロジェクト)
追加のインクルード ディレクトリ: #include<xxxx.h> で xxxx.h の検索ディレクトリを探します (各項目はフォルダー XXXX に対応します。フォルダーにはコンパイルに必要なヘッダー ファイルが含まれています。使用する場合は、直接 #include<XXXX > です)それ)
リンカ
追加のライブラリ ディレクトリ: .lib ファイルの検索ディレクトリ
追加の依存関係: lib ライブラリ (C++ ライブラリは、関数とクラスの宣言を *.h に配置し、実装を *.cpp または *.cc に配置します。コンパイル後、*.cpp、*.cc、*.c がパッケージ化されます)ソース コードを保護するために .lib ファイルに保存されます)
サブシステム:サブシステムの選択は、リンカがどのエントリ ポイント シンボル (またはエントリ関数) を選択するかに影響します。
オプション
- 未設定 - サブシステムが設定されていません。
- コンソール - Win32 キャラクター モード アプリケーション。オペレーティング システムは、コンソール アプリケーション用のコンソールを提供します。main または wmain が定義されている場合、console がデフォルトになります。
- Windowsアプリケーションはコンソールを必要としません。これはおそらく、ユーザーと対話するために独自の Windows を作成するためです。WinMain または wWinMain が定義されている場合、デフォルトは WINDOWS です。
- Windows NT 用のネイティブデバイス ドライバー。/DRIVER: WDM が指定されている場合、デフォルト値は NATIVE です。
- Efi アプリ - Efi アプリ。
- Efi スタートアップ サービス ドライバー - Efi スタートアップ サービス ドライバー。
- EFI ROM -EFI ROM。
- Efi ランタイム - Efi ランタイム。
- Posix - Windows NT の posix サブシステムで実行されるアプリケーション。
詳細:リンカーのプロパティ ページ | Microsoft Docs
よくある問題
1.インクルード ディレクトリと追加のインクルード ディレクトリ(ライブラリ ディレクトリと追加のライブラリ ディレクトリ) の違い:
インクルード ディレクトリ: システム インクルード マクロの値が変更されました。これはグローバルです。
追加のインクルード ディレクトリ: 現在のプロジェクトに使用され、他のプロジェクトには影響しません。
(ライブラリディレクトリと追加ライブラリディレクトリの違いは上記と同様です)
2.インクルード ディレクトリと追加のインクルード ディレクトリ(ライブラリ ディレクトリと追加のライブラリ ディレクトリ) の違いは、主にグローバルか現在のものであることがわかります。したがって、これらのディレクトリをプロジェクトに追加する必要がある場合、通常は追加のインクルード ディレクトリにあります。ディレクトリと追加のライブラリ ディレクトリ。 に追加されました。
3. ライブラリを使用するには、そのヘッダー ファイルをインクルードする (追加のインクルード ディレクトリ)ことに加えて、リンク プロセス中に lib も追加する必要があります (追加のライブラリ ディレクトリ、追加の依存関係)。
4.メソッドの追加:
追加のインクルード ディレクトリ --- プロジェクトのヘッダー ファイル ディレクトリを追加します。
[プロジェクト] -> [プロパティ] -> [構成プロパティ] -> [C/C++] -> [全般] -> [追加のインクルード ディレクトリ]: ヘッダー ファイルが保存されているディレクトリを追加します。
追加のライブラリ ディレクトリ --- ファイルによって参照される lib 静的ライブラリ パスを追加します。
「プロジェクト」→「プロパティ」→「構成プロパティ」→「リンカー」→「全般」→「追加のライブラリ ディレクトリ」: lib ファイルの保存ディレクトリを追加します。
追加の依存関係 --- プロジェクトによって参照される lib ファイル名を追加します。
プロジェクト -> プロパティ -> 構成プロパティ -> リンカー -> 入力 -> 追加の依存関係: lib ファイル名を追加します。
5. .dll ダイナミック リンク ライブラリをプロジェクトに追加する必要がある場合は、追加する必要がある .dll ファイルを、プロジェクトによって生成された .exe が存在するフォルダーに直接ドラッグします ([プロジェクト]->[プロパティ]->[構成プロパティ])。 ->一般 ->出力ディレクトリで、.exe がどのディレクトリに生成されるかを確認できます)。
プロジェクト構成を設定する
通常、いくつかの共通の設定が設定されており、一度設定すると、毎回設定することなく、他のローカルプロジェクトがその設定を直接継承することができます。
表示----その他のウィンドウ----プロパティマネージャーで、デバッグ | Win32をダブルクリックして設定すると、設定後はすべてのプロジェクトに有効になります。