Click to See Complete Forum and Search --> : What does the "backward compatibility" mean?


Cooker
August 20th, 2004, 08:26 AM
Hello,
I try to figure out each step of creating toolbar.

...
// Create a toolbar.
hwndTB = CreateWindowEx(0, TOOLBARCLASSNAME, (LPSTR) NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 0, 0, 0, 0, hwndParent,(HMENU) IDR_TOOLBAR1, GetModuleHandle(NULL), NULL);

// Send the TB_BUTTONSTRUCTSIZE message, which is required for
// backward compatibility.
SendMessage(hwndTB, TB_BUTTONSTRUCTSIZE, (WPARAM) sizeof(TBBUTTON), 0);
...

But what 's the purpose of TB_BUTTONSTRUCTSIZE within SendMessage???
And what does the "backward compatibility" mean???
Could someone explain for me???
Thanks! :)

RussG1
August 20th, 2004, 08:58 AM
"backward compatibility" ensures, that as Microsoft releases newer versions of the common control dynamic-link library, that older programs that used older versions of the library still work correctly. The system can determine which version of the common control dynamic-link library is being used by the size of the TB_BUTTONSTRUCTSIZE structure, and then use the appropriate functions for that version of the lib, etc.

Cooker
August 20th, 2004, 11:09 AM
"backward compatibility" ensures, that as Microsoft releases newer versions of the common control dynamic-link library, that older programs that used older versions of the library still work correctly. The system can determine which version of the common control dynamic-link library is being used by the size of the TB_BUTTONSTRUCTSIZE structure, and then use the appropriate functions for that version of the lib, etc.
Thanks for your explain!