Click here to Skip to main content
15,922,166 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
QuestionCan I put a variable length array inside a struct somehow? Pin
arnold_w17-Oct-17 0:38
arnold_w17-Oct-17 0:38 
AnswerRe: Can I put a variable length array inside a struct somehow? Pin
Peter_in_278017-Oct-17 0:57
professionalPeter_in_278017-Oct-17 0:57 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
arnold_w17-Oct-17 1:08
arnold_w17-Oct-17 1:08 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
Peter_in_278017-Oct-17 1:43
professionalPeter_in_278017-Oct-17 1:43 
AnswerRe: Can I put a variable length array inside a struct somehow? Pin
CPallini17-Oct-17 1:54
mveCPallini17-Oct-17 1:54 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
arnold_w17-Oct-17 2:02
arnold_w17-Oct-17 2:02 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
CPallini17-Oct-17 2:24
mveCPallini17-Oct-17 2:24 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
arnold_w17-Oct-17 2:46
arnold_w17-Oct-17 2:46 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
CPallini17-Oct-17 2:58
mveCPallini17-Oct-17 2:58 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
jschell17-Oct-17 7:06
jschell17-Oct-17 7:06 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
Richard MacCutchan17-Oct-17 4:50
mveRichard MacCutchan17-Oct-17 4:50 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
arnold_w17-Oct-17 8:26
arnold_w17-Oct-17 8:26 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
leon de boer17-Oct-17 16:30
leon de boer17-Oct-17 16:30 
AnswerRe: Can I put a variable length array inside a struct somehow? Pin
jschell17-Oct-17 7:20
jschell17-Oct-17 7:20 
GeneralRe: Can I put a variable length array inside a struct somehow? Pin
arnold_w17-Oct-17 8:33
arnold_w17-Oct-17 8:33 
Questioninet error Pin
Member 1346819116-Oct-17 5:22
Member 1346819116-Oct-17 5:22 
GeneralRe: inet error Pin
Richard MacCutchan16-Oct-17 5:35
mveRichard MacCutchan16-Oct-17 5:35 
QuestionMFC Activex Control Pin
RichardK15115-Oct-17 20:53
RichardK15115-Oct-17 20:53 
GeneralRe: MFC Activex Control Pin
Richard MacCutchan16-Oct-17 3:55
mveRichard MacCutchan16-Oct-17 3:55 
GeneralRe: MFC Activex Control Pin
RichardK15116-Oct-17 4:36
RichardK15116-Oct-17 4:36 
GeneralRe: MFC Activex Control Pin
Richard MacCutchan16-Oct-17 5:37
mveRichard MacCutchan16-Oct-17 5:37 
GeneralRe: MFC Activex Control Pin
leon de boer16-Oct-17 20:34
leon de boer16-Oct-17 20:34 
GeneralRe: MFC Activex Control Pin
RichardK15122-Oct-17 23:49
RichardK15122-Oct-17 23:49 
GeneralRe: MFC Activex Control Pin
leon de boer25-Oct-17 9:18
leon de boer25-Oct-17 9:18 
You don't have to add the resource you make a memory template, its the exact opposite of a resource ... I am not sure you are really getting it

In code you do this creating a memory block which you make the template in
bool CreateRotation (HWND parent){
   int nchar, ret;
   HGLOBAL hgbl;
   LPDLGTEMPLATE lpdt;
   LPWORD lpw;
   LPWSTR lpwsz;
   hgbl = GlobalAlloc(GMEM_ZEROINIT, 1024);							 // Allocate memory
   if (!hgbl) return false;											 // If allocate fail exit
   lpdt = (LPDLGTEMPLATE)GlobalLock(hgbl);							 // Lock the allocated memory
   lpdt->style = WS_POPUP | WS_CAPTION | WS_SYSMENU;											 // Window style
   lpdt->cdit = 0;													 // Number of controls
   lpdt->x  = 80;												 // X position
   lpdt->y  = 80;												 // Y position
   lpdt->cx = 300;												 // Window width
   lpdt->cy = 100;												 // Window height
   lpw = (LPWORD)(lpdt + 1);										 // Set pointer address
   *lpw++ = 0;														 // No menu
   *lpw++ = 0;														 // Predefined dialog box class (by default)
   lpwsz = (LPWSTR)lpw;												 // Typecast pointer
   nchar = 1 + MultiByteToWideChar(CP_ACP, 0, LanguageString[652], 
	  -1, lpwsz, 50);												 // Create name of window
   lpw += nchar;													 // Increment by size of name
   *lpw++ = 0;														 // No creation data
   GlobalUnlock(hgbl);												 // Release lock on the memory block 
   ret = (int)DialogBoxIndirectParam(GetModuleHandle(0), 
     (LPDLGTEMPLATE)hgbl, 
     parent, 
     (DLGPROC)RotationHandler,
	  0);		     											 // Create the dialog from template
   GlobalFree(hgbl);												 // Free the allocated memory
   if (ret == ID_Ok) {
	  PostMessage(parent, WM_COMMAND, WSC_UPDATEEVERYTHING, 0);
	  return true; 
   } else return false;				 // Return result
};


They are called runtime dialogs or dynamic dialogs but you can always know you are on the right track when you see the use of GlobalAlloc because you have to lock a block of memory to create the dialog in, which is why you don't need resource files etc.

Dynamic Dialog Boxes and C++ | Dr Dobb's[^]
In vino veritas

QuestionTo arrange n numbers in descending order ? Pin
Tarun Jha13-Oct-17 9:02
Tarun Jha13-Oct-17 9:02 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.