Stefan Dösinger stefandoesinger@gmail.com writes:
Am 2015-02-17 um 10:56 schrieb Alexandre Julliard:
I don't think that's an improvement. There may be a need for generic Win32 error printing through FormatMessage for unknown codes, but I don't see why you'd want to route all errors through it. In particular, having to make up your own Win32 error codes only to convert them back to string ids is quite ugly.
This kind of setup was originally my idea, so I might as well answer this question myself:
The basic plan is to let the advapi32 do as much of the error checking as possible and use the return value from the Reg* functions to tell the user what went wrong. There are a handful of failure modes that only apply to reg.exe and not advapi32 - in particular the currently unimplemented remote access and trailing backslashes.
I'm not sure that's a good idea either. It forces you to use generic error messages that are usually not very informative. It's better to do things in a way that allows printing more detailed errors in cases that are found to be confusing to users.