Thank you for your advice.
I found that the messages sent to DateTimePick32 control is different in different windows and wine,
2, In winxp pro 32bit:
datetime.c:839: 0: expected: nothing - actual: 0104 wp 00000028 lp 00000000
datetime.c:839: 1: expected: nothing - actual: 0055 wp 00030196 lp 00000003
datetime.c:839: 2: expected: nothing - actual: 0129 wp 00000000 lp 00000000
datetime.c:839: 3: expected: nothing - actual: 0031 wp 00000000 lp 00000000
datetime.c:839: 4: expected: nothing - actual: 0014 wp 01010050 lp 00000000
datetime.c:839: 5: expected: nothing - actual: 007f wp 00000002 lp 00000000
datetime.c:839: 6: expected: nothing - actual: 007f wp 00000000 lp 00000000
datetime.c:839: 7: expected: nothing - actual: 007f wp 00000001 lp 00000000
datetime.c:839: 8: expected: nothing - actual: 000f wp 00000000 lp 00000000
datetime.c:839: 9: expected: nothing - actual: 0085 wp 5d040652 lp 00000000
datetime.c:839: 10: expected: nothing - actual: 000d wp 00000208 lp 0022e884
datetime.c:839: 11: expected: nothing - actual: 000d wp 00000208 lp 0022e920
datetime.c:839: 12: expected: nothing - actual: 0014 wp 01010053 lp 00000000
3, In win8 32bit:
datetime.c:839: 0: expected: nothing - actual: 0104 wp 00000028 lp 00000000
datetime.c:839: 1: expected: nothing - actual: 0055 wp 000300f6 lp 00000003
datetime.c:839: 2: expected: nothing - actual: 0129 wp 00000000 lp 00000000
datetime.c:839: 3: expected: nothing - actual: 0031 wp 00000000 lp 00000000
datetime.c:839: 4: expected: nothing - actual: 0014 wp 140105d7 lp 00000000
datetime.c:839: 5: expected: nothing - actual: 007f wp 00000001 lp 00000000
datetime.c:839: 6: expected: nothing - actual: 007f wp 00000002 lp 00000000
datetime.c:839: 7: expected: nothing - actual: 007f wp 00000000 lp 00000000
datetime.c:839: 8: expected: nothing - actual: 031f wp 00000001 lp 00000000
datetime.c:839: 9: expected: nothing - actual: 031f wp 00000001 lp 00000000
datetime.c:839: 10: expected: nothing - actual: 000f wp 00000000 lp 00000000
so I think it is not suitable write a message test.
> Did you miss a 'break;' or a fall through is intentiional? In the latter
> case please add a proper comment.