web-dev-qa-db-ja.com

vs2017でのMFC開発

Vs2017をインストールしたときに、C++オプションを使用してWindows開発を選択しました。ただし、インストール後、MFCが追加されたことがわかりません。案の定、アプリケーションをコンパイルするとエラーが発生します。

致命的なエラーC1083:インクルードファイルを開けません: 'afxwin.h':そのようなファイルまたはディレクトリはありません

コントロールパネルのvs2017インストールで[変更/変更]オプションが見つかりません。 「Microsoft Foundation Classes for C++」パッケージを追加するにはどうすればよいですか?

22
Louis

VSインストーラウィンドウの上部付近を見ると、WorkloadsIndividual Components、およびLanguage Packsが表示されます。

少なくとも私の知る限り、「ワークロード」のどれもインストールにMFCを含みません。取得するには、まず「個別コンポーネント」をクリックしてから、かなり下にスクロールして「SDK、ライブラリ、およびフレームワーク」セクションに移動する必要があります。そこには、ATLおよびMFCサポート用のコンポーネントのリストがあります。

enter image description here

VS 2019インストーラーでは、可能性のリストがさらに長くなりました。 141、142ビルドセットのそれぞれについて、Spectre緩和策の有無にかかわらず、ARM、ARM64、およびx86/x64のバージョンがあります。

enter image description here

ただし、必ずしもストーリーの終わりではありません。デフォルトでは、インストールしても、MFCのUnicodeビルドのバージョンのみがインストールされます。狭い文字のバージョンが必要な場合は、個別にインストールする必要があります。インストーラーにこれを行うエントリはまったくないと思いますが、狭い文字のMFCを使用するプロジェクトをビルドしようとすると、ダウンロードするリンクを含むエラーメッセージが表示されます。

33
Jerry Coffin

Visual Studio 2017 Community Editionを搭載したWindows 10でVisual Studio 2017のインストールを変更するには、Windowsの[スタート]メニューからSettingsに移動してから検索する必要がありましたボックスに「Apps&Features」と入力して、インストールされているアプリケーションのリストを表示します(リストに表示するには「apps」と入力するだけで十分です)。

次に、アプリのリストでMicrosoft Visual Studio 2017を探し、そのエントリをクリックして、[変更]ボタンを表示しました。 [変更]ボタンをクリックすると、インストーラーが表示され、さまざまなコンポーネントを変更できます。

修正アクションを実行する前に、インストーラーがVisual Studio 2017の更新を実行したいケースを見てきました。最後に使用したときと、最後に更新したときに依存します。

そのため、[変更]ボタンの代わりに、[更新]ボタンがある場合があります。

image of first dialog for Modify Visual Studio 2017 install

VS 2017の変更ダイアログには、「ワークロード」、「個別コンポーネント」、および「言語パック」の3つのタブがあります。 「個々のコンポーネント」をクリックして、インストールの最後のセクションである「SDK、ライブラリ、およびフレームワーク」というタイトルのセクションまでスクロールします。 「MFCおよびATLサポート(x86およびx64)」のエントリがあり、最後にチェックボックスがあります。

image of Modify dialog showing the tabs

image of Modify dialog with Individual components tab showing MFC checkbox

[インストールの変更]ダイアログのこの[個々のコンポーネント]ビューから利用できるものがたくさんあります。

19

Visual Studio Installerを使用して変更する必要があります。

MFCプロジェクトを作成するには、アプリケーションタイプにWin32プロジェクト/ Win32コンソールアプリケーションを選択し、OKをクリックするだけです。アプリケーションウィザードでnextをクリックし、アプリケーション設定MFCの下で共通ヘッダーファイルの追加:

1
Alex

VS 2019のヒントを追加するだけです:

@ Jerry Coffin's answer は、VS 2019でのMFC/ATLオプションの爆発的な展開をうまく処理します。多くのオプションがあり、各MFCパックは1.1 + GBであるため、ここで正しい方法を選択します1。

プラットフォーム:これを知っていることを願っています:)しかし、それはプロジェクトのプロパティにあります。

バージョン:既存のプロジェクトの場合、「構成プロパティ->一般->プラットフォームツールセット」のプロジェクトプロパティにあります。

以下は両方(この場合はWin32 = x86)を示すスクリーンショットです。この場合、 "v141ビルドツール用のC++ MFC(x86&x64)"Screenshot of project properties

0
MG83