VC++2005のMFCにてアプリケーションを作成しています。
一つのソリューション内に二つのプロジェクトA、Bが存在し、
プロジェクトAで発生したあるイベント(例:ボタン押下)にて、
プロジェクトBで作成したダイアログを表示させたいのですが、
実装したところ、下記コンパイルエラーが出てしまいます。
「error C2065: 'IDD_TEST2_DIALOG' : 定義されていない識別子です。」
現在のプロジェクトの設定としては、
・プロジェクトAの依存先をプロジェクトBに設定
・プロジェクトA選択状態で、
「プロジェクト」→「プロパティ」→「構成プロパティ」
→「C/C++全般」→「追加のインクルードディレクトリ」にて、プロジェクトBのパスを指定
と設定しているのですが、どこに問題があるのでしょうか?
もし問題があるようでしたら、正しい設定方法、また実装方法について、
お手数おかけしますが、ご教授お願いできませんでしょうか?
また下記にソースコード実装例を記載します。
【プロジェクトA(呼び出し側)】
#include "test2Dlg.h"//プロジェクトBのヘッダファイル
・・・
void Ctest1Dlg::OnBnClickedOk()
{
CDlgTest MyDlg;
MyDlg.DoModal();//プロジェクトBのダイアログ生成
}
【プロジェクトB(呼出され側)】
・リソースビューにて、ダイアログ(IDD_TEST2_DIALOG)の「クラスの追加」で、
クラス名「CDlgTest」と指定
No.1ベストアンサー
- 回答日時:
その構成には無理があると思います
別EXEのダイアログを表示したいってことですよね
プロジェクトBの中のResource.h で定義された IDD_TEST2_DIALOGが
プロジェクトAの中のどこかで定義されていない限り質問のようなエラーになるでしょう
この問題が解決できたにせよ
今度はプロジェクトBのダイアログ用のリソースが プロジェクトAには
存在しません
したがって CDlgTestのインスタンス MyDlgを初期化しようとした時点で実行時エラーになるでしょう
リソースビューでプロジェクトBのダイアログを選択 編集 > コピー
プロジェクトAを選択 編集 > 貼り付け
でリソースをコピーします
プロジェクトBの CDlgTestクラスのソース および ヘッダーをプロジェクト Aにコピー
として 構築されることをお勧めします
別の方法としては プロジェクトBをDLLとして構築する方法がありますが
ここですべてを説明できるものではありません
早急なご回答ありがとうございます。
Win32コンソールアプリケーションでの作成だと、
上手くいったのですが、MFCでは無理があるようですね。。
とりあえずはコピーを使用する方法で上手く動作したので、
DLL構築の方法については、余裕があれば独自で調べてみることにします。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 AfterEffectでのシャターの挙動がおかしい 1 2023/05/07 00:38
- Visual Basic(VBA) VBプロジェクトでのフォルダ構成について 1 2023/07/22 03:49
- C言語・C++・C# VisualStudioのソースコードで漢字を使いたい 4 2022/05/21 10:16
- PowerPoint(パワーポイント) 2016EXCEL→2016PowerPointにコピペすると図形がゆがみます 5 2022/03/31 11:44
- その他(プログラミング・Web制作) Visual StudioでDjangoのプロジェクト配下のappを作成する方法 1 2022/05/01 03:47
- Ruby Ruby on Railsでサーバーを立ち上げるには 1 2022/08/28 16:16
- 歴史学 古代舟による実験航海は、ほとんどが成功しているとは言えないようですね。 6 2022/10/17 15:13
- その他(コンピューター・テクノロジー) FPGA構成データ、ソフトウェアデータ をボード Zybo Z20 用に転送する方法 1 2023/07/25 18:19
- その他(プログラミング・Web制作) Gitlabで既存のプロジェクト(ソース)をコピーした別名プロジェクトの作り方を教えてください 1 2022/05/31 16:01
- Gmail GmailとTodoistの連携について 1 2022/12/06 12:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
デバッグとビルドは何が違うの...
-
eclipseでプログラムが実行でき...
-
ソリューションをまたがるデバ...
-
ビルド時のエラー(書き込みで...
-
Visual studio2017で、2回目の...
-
デバッガでステップ実行してい...
-
visual studio 2008 のデバッグ...
-
Visual Studio 2008 SP1について
-
C#、C++間のDLLの呼び出しについて
-
Release版のexeが動きません
-
Visual Studio 2017 ビルドする...
-
VB2005でデバッグ実行できない
-
Eclipseのブレークポイントが○...
-
VBでブックマークを保存する方...
-
Visual Studio 2008 Profession...
-
VBのプロジェクトが開けない
-
VB6のデバッグ
-
C言語での開発でエラーが出て困...
-
vbpが開けない!!
-
VisualStudio Just-In-Time
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
デバッグとビルドは何が違うの...
-
デバッガでステップ実行してい...
-
DLL参照時に指定されたモジュー...
-
visual studio2019でデバッグが...
-
Eclipseのブレークポイントが○...
-
ソリューションをまたがるデバ...
-
VB.netを実行するとデバック プ...
-
Visual studio2017で、2回目の...
-
C言語での開発でエラーが出て困...
-
Visual Studio 2008 SP1について
-
eclipseでデバックするとエラー...
-
ASP.NETでデバッグができない
-
VB6.0を使用しています
-
eclipseでプログラムが実行でき...
-
vb ver6 でformat文やTrim文の...
-
ブレークポイントは現在の設定...
-
VC++でSQL Serverに接続するに...
-
C# リソースに埋め込んだ.exeフ...
-
Visual C#で、usingが出来ない...
-
visual studio 2008 のデバッグ...
おすすめ情報