Итак, я заметил, что диапазоны кодов уведомлений, определенные в CommCtrl.h, выглядят так:
#define NM_FIRST (0U- 0U) // generic to all controls
#define NM_LAST (0U- 99U)
...
#define TRBN_FIRST (0U-1501U) // trackbar
#define TRBN_LAST (0U-1519U)
Так что общие элементы управления Microsoft, по крайней мере, имеют определенные диапазоны (и, вероятно, всегда будут большими значениями без знака).Поэтому, если я управляю стандартными элементами управления суперкласса или подкласса и использую коды уведомлений, начинающиеся с 0, я думаю, что я должен быть защищен от текущих и будущих версий Windows.
(Если бы я производился от сторонних элементов управления, тоэти сторонние элементы управления должны будут определять свои собственные зарезервированные диапазоны. В противном случае все ставки будут отключены.)