掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DialogBox() でリソース名が見つからない (ID:60484)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
DD.です。 お世話になります<(_ _)> 度々申し訳ないです。 WindowsXP SP2 : VS2005 Pro Win32アプリ(SDK)にリソースでダイアログボックスを一つ追加しました。 ダイアログのみ使用になるので CreateWindow() 等は使用していません。 エラーの症状は DialogBox()呼び出し時にエラーが発生します。 エラー内容は、「指定されたリソース名がイメージファイルに見つかりません。」になります。 以下コード抜粋: int WINAPI WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpszArgs, int nWinMode ) { (void)hPrevInst; (void)lpszArgs; (void)nWinMode; InitApp(); INT_PTR result; result = DialogBox( hInst, "IDD_DIALOG1", NULL, (DLGPROC)DlgProc ); if ( result == 0 ) { char err_str[256]; int err_size = 256; FormatMessage( FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), NULL, err_str, err_size, NULL ); MessageBox( NULL, err_str, "パラメータが無効です", MB_OK ); } else if ( result == -1 ) { char err_str[256]; int err_size = 256; FormatMessage( FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), NULL, err_str, err_size, NULL ); MessageBox( NULL, err_str, "何らかの原因です", MB_OK ); } return 0; } Microsoftサイトより、DialogBox()の戻り値が "0" の場合には「パラメータが無効」もしくは「従来のWindowsのバージョンとの互換性」が問題であり、"-1" の場合にはそれ以外の問題がある。と、記載されていました。 本プログラムでは "-1" が帰ってきます。 作成しているダイアログは現在はデフォルトの状態で、「OK」「キャンセル」のボタンが存在するのみです。 リソースファイルより抜粋: IDD_DIALOG1 DIALOGEX 0, 0, 337, 231 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Dialog" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN ... END resource.h より抜粋: #define IDD_DIALOG1 101 resource.h はインクルードしてあります。 リソースファイルもプロジェクトには組み込んであるのですが、それを見に行っていないようにも思えます。 リソースファイルをプロジェクトからはずした状態でもエラー内容は同じでした。 こういった内容で何がエラーの原因として考えられるでしょうか? ご存知の方いましたご教授お願い致します。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.