|
@@ -313,7 +313,6 @@ const
|
|
MB_USEGLYPHCHARS = 4;
|
|
MB_USEGLYPHCHARS = 4;
|
|
CP_ACP = 0;
|
|
CP_ACP = 0;
|
|
CP_OEMCP = 1;
|
|
CP_OEMCP = 1;
|
|
- WC_NO_BEST_FIT_CHARS = $400;
|
|
|
|
|
|
|
|
function MultiByteToWideChar(CodePage:UINT; dwFlags:DWORD; lpMultiByteStr:PChar; cchMultiByte:longint; lpWideCharStr:PWideChar;cchWideChar:longint):longint;
|
|
function MultiByteToWideChar(CodePage:UINT; dwFlags:DWORD; lpMultiByteStr:PChar; cchMultiByte:longint; lpWideCharStr:PWideChar;cchWideChar:longint):longint;
|
|
cdecl; external 'coredll' name 'MultiByteToWideChar';
|
|
cdecl; external 'coredll' name 'MultiByteToWideChar';
|
|
@@ -340,7 +339,7 @@ end;
|
|
|
|
|
|
function WideToAnsiBuf(WideBuf: PWideChar; WideCharsLen: longint; AnsiBuf: PChar; AnsiBufLen: longint): longint;
|
|
function WideToAnsiBuf(WideBuf: PWideChar; WideCharsLen: longint; AnsiBuf: PChar; AnsiBufLen: longint): longint;
|
|
begin
|
|
begin
|
|
- Result := WideCharToMultiByte(CP_ACP, WC_NO_BEST_FIT_CHARS, WideBuf, WideCharsLen, AnsiBuf, AnsiBufLen, nil, nil);
|
|
|
|
|
|
+ Result := WideCharToMultiByte(CP_ACP, 0, WideBuf, WideCharsLen, AnsiBuf, AnsiBufLen, nil, nil);
|
|
if ((WideCharsLen <> -1) or (Result = 0)) and (AnsiBuf <> nil) then
|
|
if ((WideCharsLen <> -1) or (Result = 0)) and (AnsiBuf <> nil) then
|
|
begin
|
|
begin
|
|
if Result + 1 > AnsiBufLen then
|
|
if Result + 1 > AnsiBufLen then
|