http://bugs.winehq.org/show_bug.cgi?id=14509
Summary: RegGetValue sometimes doesn't work properly Product: Wine Version: 1.1.1 Platform: All OS/Version: All Status: UNCONFIRMED Severity: normal Priority: P2 Component: advapi32 AssignedTo: wine-bugs@winehq.org ReportedBy: info@mkosch.de
Created an attachment (id=14835) --> (http://bugs.winehq.org/attachment.cgi?id=14835) Solution for wrong behaviour of RegGetValue
While configuration "The Bat!" for Wine I found out a problem with "RegGetValueA" and "RegGetValueA". In case dwFlags contains the Bits (RRF_RT_REG_EXPAND_SZ | RRF_RT_REG_SZ) and not the bit RRF_NOEXPAND the function will return ERROR_INVALID_PARAMETER. This is wrong behaviour, because expansion will transform a result of type RRF_RT_REG_EXPAND_SZ into RRF_RT_REG_SZ which satisfies the request.
This behaviour causes "The Bat!" to be unable to access some of its registry settings, including the registration code. So it refuses to work after the trial period expired and the code need to be entered manually every time the program starts up. Other programs may be affected ass well, especially because the flag RRF_RT_ANY won't work.
I built a patch for wine 1.1.1 wich solves this issue. This patch applies to advapi32.