Aye, thanks. Here's some hopefully relevant bits of code:
Code:
// An example dialog. Not one I'd particularly like to put in the main window, but works
// as an example.
DIALOG_NEW_MP_JOIN DIALOG DISCARDABLE 100, 150, 150, 60
STYLE WS_CHILD | WS_VISIBLE // I added WS_VISIBLE, didn't help though...
CAPTION "Join a Game"
FONT 8, "MS Sans Serif"
{
LTEXT "Please enter target IP address:", ID_TEXT_1, 5, 5, 100, 20
EDITTEXT ID_EDIT_IP, 15, 25, 40, 14
DEFPUSHBUTTON "&Let's go!", IDOK, 80, 40, 50, 14
}
Calling the dialog from my main window proc:
Code:
case ID_NEW_MP_JOIN:
{
int returnVal = DialogBox((HINSTANCE)GetWindowLong(hwnd, GWL_HINSTANCE),
MAKEINTRESOURCE(DIALOG_NEW_MP_JOIN), hwnd, processNewMPJoinDialog);
if (returnVal == IDCANCEL)
/*messagebox*/;
break;
}
The (HINSTANCE) way of calling the dialog causes no dialog to become visible, but program functions normally. GetModuleHandle(NULL) in place of the (HINSTANCE) parameter causes the dialog to appear, but it won't function and I have to End-Taskify my program.
If anything obvious jumps out at you, please let me know.