ワイド文字列を UTF-8 に変換するために WSTRTOUTF8 関数を使用しましたが、 正しく変換されません。
WSTRTOUTF8 関数は、その名前に反して、 ワイド文字列を UTF-8 に変換する関数ではなく、 UTF-16 を UTF-8 に変換する関数です。
また、UTF8TOWSTR は、 UTF-8 をワイド文字列に変換する関数ではなく、 UTF-8 を UTF-16 に変換する関数です。
WSTRTOUTF8 関数は、その名前に反して、 ワイド文字列を UTF-8 に変換する関数ではなく、 UTF-16 を UTF-8 に変換する関数です。
また、UTF8TOWSTR は、 UTF-8 をワイド文字列に変換する関数ではなく、 UTF-8 を UTF-16 に変換する関数です。