文書番号: 401930
最終更新日: 2003/11/11
この資料は以下の製品について記述したものです。
- Microsoft(R) Visual C++(TM) Development System Standard Edition forWindows(TM) Version 1.0
- Microsoft(R) Visual C++(TM) Development System Professional Edition forWindows(TM) Version 1.0
概要
この資料は AppWizard で生成したコードに AppStudio でダイアログとコントロールを
作成した場合に、リソースの ID が重複する障害について説明したものです。
詳細
AppWizard でコードを生成し、AppStudio でダイアログを新規に作成し、その上にコ
ントロールを作成すると、最初に作成したコントロールとダイアログの ID が同じ番号
になってしまい、ClassWizard などでそのダイアログのクラスを表示すると、最初に作
成したコントロールの ID の表示が IDD_DIALOG1 となってしまいます。
原因
ダイアログ、コントロールの define されている名称は異なっているのですが、実際
の値自体が同じものになっているので、ClassWizard や AppStudio で読み込むと最初
に定義されているダイアログの define を表示してしまいます。これは AppStudio の
障害です。
対処方法
ダイアログと同じ define となっているコントロールを DDX での処理の対象としたり、
GetDlgItem() のパラメータに定義しても問題は発生しません。
ID を重複しないようにする場合は define されている値を「編集 (E) 」の「シンボル
(S)...」メニューを開いて、「変更 (C)...」で修正して下さい。また、ダイアログ作成
前に RESOURSE.H の APS_NEXT_CONTROL_VALUE の値を 101 以外(例えば 8001 )にする
ことにより、事前に重複を避けることができます。
Keywords: KBBUG VC10 KB401930
Technology: kbAudDeveloper kbVCsearch