Attaching a Menu to a dialog is not a problem. Have you tried using a dialog that has its own class?
WNDCLASS wc;
memset(&wc,0,sizeof(WNDCLASS));
wc.lpfnWndProc = DefDlgProc;
wc.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS ;
wc.cbWndExtra = DLGWINDOWEXTRA;
wc.hInstance = hinst;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hIcon = LoadIcon(hinst, MAKEINTRESOURCE(IDI_FINDFILE));
wc.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1);
wc.lpszMenuName = MAKEINTRESOURCE(IDMENU_MAIN);
wc.lpszClassName = "findfile";
if(!RegisterClass(&wc))
return 0;
John