MFCリソースIDを渡すたびにMAKEINTRESOURCEマクロが常に不良ポインタを返すような問題があります。リソースIDはすべてResource.hにリストされ、リソースプロパティでIDの設定と一致します。MAKEINTRESOURCEがリソースIDの不正ポインタを返す
私はリソースが&のIDの仕事の仕組みを完全に理解していないので、私は完全にわかりませんが、悪いポインタが私のリソースが正しい場所に保存されていないことを示しているようですメモリに?これは私が何か新しいものを追加しようとしている古いプロジェクトです。古いリソースでMAKEINTRESOURCEを実行しようとするとanfをチェックしました(これは間違いなく動作しています。ポインタ。
この原因は何ですか?
編集:「悪いポインタ」によって、あなたは、「メモリー内のオブジェクトを資源に指していないポインタ」を意味する場合それはどんな違い
「悪いポインタ」の意味を具体的に説明してください。 'MAKEINTRESOURCE'はポインタ内の整数をエンコードします。あなたが逆参照できるポインタではありません。あなたがそれを使って行うことができる唯一のことは、それをリソース関数に渡すことです。 –
戻り値の上でデバッグとマウスでプログラムを実行すると、「 CXX0030Error:式が評価されません」と表示されます。 これは予期されていますか? MAKEINTRESOURCEから返された値を使用してリソースをロードしようとすると、リソースを見つけることができず、おそらくが原因だと考えました。 –
Marzipan
はい、それは何かへのポインタではなく、逆参照できないため、期待されています。 –