Switch to -W versions of registry API #60
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
using UTF-16 strings throughout, to fix encoding issues in the key paths and value strings read and written.
This is my attempt to fix issue #44. For the wide strings I chose not to use the ref-wchar package since it uses iconv - which seems overkill for UTF-8 to UTF-16 conversion - and because it doesn't give us a mechanism to create a UTF-16 string either. We need this when preparing a buffer for RegSetValueEx, so I'd then either have to duplicate the iconv setup that ref-wchar does or just use Buffer.from(..., 'utf16le') anyway. So I've added a simple implementation reg-LPWSTR that uses Buffer's utf16le for the string conversion. It's possible that this won't work with characters outside the unicode BMP, and that's the reason that ref-wchar used iconv: I haven't tested that.
It passes your test suite, and some simple manual tests with non-Latin-1 characters.