다음을 통해 공유


SnaNlsMapString

SnaNlsMapString 함수는 문자열을 한 코드 페이지에서 다른 코드 페이지로 변환하기 위해 호출됩니다.

문법

  
int WINAPI SnaNlsMapString(   
LPCTSTR lpSrcStr,  
LPTSTR lpDestStr,  
UINT inCodePage,  
UINT outCodePage,  
Int in_length,  
int out_length,  
UINT in_type,  
UINT out_type,  
WORD *Options,  
LONG*lConvRequiredLen  
);  

매개 변수

lpSrcStr
제공된 매개 변수입니다. 번역할 입력 소스 문자열입니다.

lpDestStr
반환된 매개 변수입니다. out_length 0인 경우 NULL일 수 있는 번역된 문자열입니다.

inCodePage
제공된 매개 변수입니다. 들어오는 소스 문자열의 코드 페이지를 지정합니다. 입력이 유니코드이면 무시됩니다.

outCodePage
제공된 매개 변수입니다. 번역된 출력 문자열의 코드 페이지를 지정합니다. 출력이 유니코드이면 무시됩니다.

길이
제공된 매개 변수입니다. 입력이 멀티바이트인 경우 문자로 입력 소스 문자열의 길이를 지정하거나 입력이 유니코드인 경우 와이드 문자로 지정합니다.

out_length
제공된 매개 변수입니다. 출력이 멀티바이트인 경우 또는 출력이 유니코드인 경우 와이드 문자로 변환된 출력 문자열에 사용할 수 있는 최대 길이를 문자 단위로 지정합니다.

in_type
제공된 매개 변수입니다. 입력 소스 문자열의 형식을 지정합니다. in_type의 가능한 값은 멀티바이트의 경우 SNA_MULTIBYTE 및 유니코드의 경우 SNA_UNICODE입니다.

out_type
제공된 매개 변수입니다. 변환된 출력 문자열의 형식을 지정합니다. out_type의 가능한 값은 멀티바이트의 경우 SNA_MULTIBYTE, 유니코드의 경우 SNA_UNICODE입니다.

옵션
제공된 매개 변수 및 반환된 매개 변수입니다. 제공된 매개 변수로, TrnsDT 옵션 및 번역의 기본 문자를 포함하여 번역 프로세스에 적용할 수 있는 옵션 집합을 지정합니다. 반환 시 이 매개 변수는 함수 호출이 실패한 경우 출력 변환된 문자열에 필요한 버퍼 길이를 나타냅니다.

lConvRequiredLen
반환된 매개 변수입니다. 호출에 실패한 경우 필요한 버퍼 길이입니다.

반환 값

SnaNlsMapString 함수는 성공 시 lpDestStr에 기록된 문자 또는 와이드 문자 수를 반환합니다. 그렇지 않으면 실패할 때 0이 반환됩니다.

실패할 경우 Win32® GetLastError 함수를 사용하여 오류의 원인을 나타내는 오류 코드를 반환해야 합니다. GetLastError에서 반환할 수 있는 값은 다음과 같습니다.

지원되지 않는 오류

이 오류는 NLS 언어 리소스 파일을 사용할 수 없거나 원본 및 대상 문자열의 in_typeout_type 같은 형식이 아닌 두 가지 가능한 이유로 반환됩니다.

버퍼 오버플로우 오류

출력 버퍼가 너무 작으면 이 오류가 반환됩니다. 이러한 경우 Options 매개 변수는 out_length 데 필요한 값을 반환합니다.

ERROR_INVALID_PARAMETER (잘못된 매개변수)

잘못된 값이 매개 변수에 전달된 경우 이 오류가 반환됩니다. 예를 들어 in_type 또는 out_type 매개 변수에 정의되지 않은 값이 포함된 경우입니다.

ERROR_INVALID_DATA (잘못된 데이터)

이 오류는 lpSrcStr 매개 변수에 잘못된 값이 전달된 경우 반환됩니다. 예를 들어 입력 문자열 끝에 리드 바이트가 있는 경우입니다.

오류 - 메모리 부족 (ERROR_OUTOFMEMORY)

이 오류는 SNANLS DLL에서 사용하기 위해 메모리를 할당할 수 없는 경우 반환됩니다.