Separate names with a comma.
Discussion in 'Support' started by vefatica, Jul 31, 2017.
Does that key exist?
The error is coming from Windows, not TCC.
No, the key does not exist. Are you calling GetLastError() after a function that doesn't SetLastError()?
Here's a similar one with another oddity (that was not in my first example). Notice the leading space when the parameter is shown after the error message.
ProcessMonitor says TCC calls RegOpenKey (result "NAME NOT FOUND" ... ???). But WinDbg does not break on RegOpenKeyW! Could it be the new VisualStudio pooh-poohing that old function?
WinDbg wasn't breaking because it had set the breakpoint at CRYPT32!RegOpenKeyExW. After I specified ADVAPI32!RegOpenKeyExW and tried the experiment in question, I could see that RegOpenKeyExW returns 2, which seems correct.
Not reproducible here with 21.0.39.
I took a look at that code (which is in a third-party library). They are throwing an exception if RegOpenKeyEx returns an error; the (generic) exception handler then calls GetLastError(). For 21.0.40, I just changed that to pass the error returned from RegOpenKeyEx. (Though to be fair to the original developer, the MS docs never say which of the Windows APIs do not support GetLastError().)
That one with the leading space was with build 39. Here it is again.