現在オフラインです。再接続するためにインターネットの接続を待っています

バグ: GetDlgItem() 返します Win32s で NULL

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:149982
この資料は、アーカイブされました。これは "現状のまま" で提供され、更新されることはありません。
現象
ポインターを取得、CWnd コントロールのダイアログ ボックスを GetDlgItem() の呼び出し失敗し、Win32s で NULL を返すことができます。 DDX 関数を呼び出す DoDataExchange()、GetDlgItem() を呼び出すまでも終了します。 Dlgdata.cpp、43 行でアサートおそれがあります。
原因
これは、ダイアログ ボックスで、コントロールの拡張スタイルことが原因です。 拡張スタイル DIALOGEX リソースにダイアログ リソースを変換されます。 Win32s は DIALOGEX のリソースをサポートしません。 ダイアログ ボックスで、コントロールのいずれが作成され、ダイアログは正しく表示されません。 DIALOGEX スタイルを置き換える方法については、この資料の「関連情報」「参照をしてくださいください。
解決方法
ダイアログ リソースにすべてのコントロール内のすべての拡張スタイルを削除します。
状況
Microsoft は、この資料の冒頭に記載した Microsoft 製品にかかわる問題であることを確認済みです。 おは、問題を調査およびは転記新しい情報をここで「サポート技術情報」(Microsoft Knowledge Base) 利用可能になったとします。

Visual C++ バージョン 4. 2 以降は、建物 Win32s アプリケーションをサポートできません。
詳細
関連情報については、Microsoft Knowledge Base の次の記事を参照してください:
138971BUG: 既定値] ダイアログ ベースのアプリケーションが Win32s で機能しません。
ダイアログ ベースのハングします。

警告: この記事は自動翻訳されています

プロパティ

文書番号:149982 - 最終更新日: 02/01/2014 04:06:02 - リビジョン: 2.1

Microsoft Foundation Class Library 4.2

  • kbnosurvey kbarchive kbbug kbuidesign kbprogramming kbdlg kbmt KB149982 KbMtja
フィードバック