Hi,
what I'm trying to do is loading a .res file containing a dialog resource and then using DialogBoxIndirectParamA to display it. That function expects a 'Pointer to a global memory object containing a template that DialogBoxIndirect uses to create the dialog box'. The problem is that I don't know how to create that 'global memory object'. I tried GlobalAlloc, CreateFileMapping and the like but nothing worked for me. Maybe someone can point me in the right direction.
thx in advance
the memory object is in fact data that defines your dialogbox
look in DLGTEMPLATE in the api reference.
i give you an example that i used on one of my patch some times ago :
stDlgLineTemplate dd DS_CENTER or DS_SYSMODAL or WS_CAPTION or WS_POPUP or WS_SYSMENU
dd 0
dw 2
dw 0,0,63,11
dw 0
dw 0
db 'g',0,'o',0,'t',0,'o',0,' ',0,'l',0,'i',0,'n',0,'e',0
db 0,0,0,0
dd WS_BORDER or WS_CHILD or WS_VISIBLE or WS_TABSTOP
dd 0
dw 0,0,23,11
dw IDC_EDITLINE
dw 0ffffh
dw 81h
dw 0
dw 0
dw 0
dd WS_CHILD or WS_VISIBLE or BS_DEFPUSHBUTTON or WS_TABSTOP
dd 0
dw 23,0,40,11
dw IDC_GOTOLINE
dw 0ffffh
dw 80h
db '&',0,'g',0,'o',0,'t',0,'o',0,' ',0,'l',0,'i',0,'n',0,'e',0
db 0,0,0
dw 0
db 0
beware that your template must be dword aligned, that' s why you can find some db 0,0,... in that source, it' s just to align the dialog templates.
dword alignment did the trick, thx