シンプルなダイアログボックスとリストボックスを含む.rcファイルを持つシンプルなdllを作成しようとしています。Visual Studio の助けを借りて、コントロールをドラッグ アンド ドロップしてリソースを作成しました。DialogBox() APIを呼び出すインターンである関数を公開しました。
サンプル Windows アプリケーションから dll を動的に読み込み、公開された関数を呼び出しています。ダイアログ ボックスの作成がエラー コード 126 で失敗する
なぜこのように振る舞うのか、誰でも助けてくれますか!?
コードは次のとおりです。
INT_PTR CALLBACK WndProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch(uMsg)
{
case WM_INITDIALOG:
{
InitCommonControls();
PopulateList(hwndDlg);
return TRUE;
}
case WM_COMMAND:
{
switch(wParam)
{
case IDOK:
SaveSelectedItem(hwndDlg);
EndDialog(hwndDlg,0);
return TRUE;
case IDCANCEL:
EndDialog(hwndDlg, 0);
return TRUE;
}
}
default:
DefWindowProc(hwndDlg, uMsg, wParam, lParam);
}
}
HINSTANCE gInstance;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
DialogBox(gInstance, MAKEINTRESOURCE(IDD_DIALOG), hwnd, WndProc);
return TRUE;
}