A specific program calls variant:VARIANT_FormatDate in varformat.c thus: variant:VARIANT_FormatDate (0x32ed04->(VT_DATE),L"Short Time",0x32ea20,0x00000000,0x32eb6c,0x00000400) And with this program, it eventually wishes to scan a '#'=0x23 character. Now, this character is known as: #define FMT_DATE_TIME_UNK2 0x23 and eventually, VARIANT_FormatDate falls into the default error case: default: ERR("Unknown token 0x%02x!\n", *pToken); hRes = E_INVALIDARG; goto VARIANT_FormatDate_Exit; thus killing the program. If as a test I simply add this: case FMT_DATE_TIME_UNK2: break; default: ..... wine seems to handle the Windows program fine. I have no idea what the '#' is used for in this situation. I don't even know if this is a problem with wine. Unfortunately, I can't provide the failing program (licensing issues).
Just for the record, this remains a problem in app-emulation/wine-1.1.5 and seems pretty clearly to be a misunderstanding between some windows developer and wine upstream on what a '#' varformat character means in date or time formatting. That said, wine-1.1.5 seems to be overall an improvement over the wine-0.* series (and over the wine 1.0_* series and 1.1.0, 1.1.1 which introduced some problem with Visual Basic. It is apparently gone now however.)