(リソース エディターを使用して) Win32 DLL 内にダイアログ ボックスを作成し、(この DLL を使用して) アプリケーション プログラムが DisplayDialog を呼び出すときにダイアログ ボックスを表示したいのですが、機能しません。
// AppProgram.cpp
...
LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg) {
case WM_COMMAND:
switch (LOWORD (wParam)) {
case IDM_FILE_NEW_DIALOG:
DisplayDialog (hInst, hWnd);
break;
...
}
break;
....
}
return DefWindowProc(hWnd, msg, wParam, lParam);
}
私のDLLは次のように見えます
#include "stdafx.h"
#include "myDLL.h"
EXPORT BOOL CALLBACK DisplayDialog (HINSTANCE hInst, HWND hWnd) {
DialogBox (hInst, MAKEINTRESOURCE (IDD_DIALOG1), hWnd, reinterpret_cast<DLGPROC> (DiagProc));
// MessageBox works here
}
...
ダイアログが AppProgram に属している場合、この DLL がダイアログを表示することをテストしました。ここでは、DLL の一部である場合にダイアログを表示したいと考えています。
DLL 内でダイアログを作成するか、プログラムから渡すかを提案してください。+ 特定のシナリオでダイアログを表示する方法。前もって感謝します。