The following function works fine when returning the Windows documents path if it contains all English characters; but returns gibberish if the path contains non English characters, such as Japanese. Any solutions to this problem?
DLLEXPORT char* GetDocPath()
{
    wchar_t Folder[1024];
    HRESULT hr = SHGetFolderPathW(0, CSIDL_MYDOCUMENTS, 0, 0, Folder);
    if (SUCCEEDED(hr))
    {
        char str[1024];
        wcstombs(str, Folder, 1023);
        return str;
    }
    else return NULL;
}
 
    