https://bugs.winehq.org/show_bug.cgi?id=57746
--- Comment #4 from axis6404@proton.me --- I have found the cause/solution of the bug.
Sending LVM_FINDITEMA (Ascii version. not W!) to VirtualListview by SendMessage will send LVN_ODFINDITEMW (Wide version. not A!) to the listview/parent window. Correctly, LVN_ODFINDITEMA (Ascii version. not W!) should be sent. LVN_ODFINDITEMW will be sent for both LVM_FINDITEMA and LVM_FINDITEMW. Therefore, if your program has only LVN_ODFINDITEMA handler, LVN_ODFINDITEMW will be processed by::DefWindowProc and always returns 0. Therefore, LVM_FINDITEMA/ListView_FindItemA will not work at all. It always returns 0. LVN_ODFINDITEMW ! = LVN_ODFINDITEMA
If LVM_FINDITEMA, please send LVN_ODFINDITEMA
The bug is on this line: https://github.com/wine-mirror/wine/blob/e4bf31b67348c3c287f153570ca2c32e941... https://github.com/wine-mirror/wine/blob/e4bf31b67348c3c287f153570ca2c32e941...
Thanks for reading to the end.