home *** CD-ROM | disk | FTP | other *** search
- #pragma option push -b -a8 -pc -A- /*P_O_Push*/
- #ifdef __cplusplus
- extern "C"
- {
- #endif
-
- #if !defined __SNANLS_INC__
-
- #define __SNANLS_INC__
-
- /* ********************* Constants ******************** */
-
- #define CP_37 37 /* EBCDIC Lower English */
-
- #define CP_273 273
- #define CP_277 277
- #define CP_278 278
- #define CP_280 280
- #define CP_284 284
- #define CP_285 285
-
-
- #define CP_290 290 /* EBCDIC Katakana */
-
- #define CP_297 297
- #define CP_423 423
- #define CP_500 500
- #define CP_875 875
-
- #define CP_930 930 /* EBCDIC Katakana + Kanji */
- #define CP_931 931 /* EBCDIC Lower English + Kanji */
- #define CP_932 932 /* Japanese */
-
- #define CP_933 933 /* EBCDIC Korean */
-
- #define CP_935 935 /* EBCDIC Simplified Chinese */
- #define CP_936 936 /* Chinese */
- #define CP_937 937 /* EBCDIC Traditional Chinese */
-
- #define CP_939 939 /* EBCDIC Extended Lower English + Kanji */
- #define CP_949 949 /* Korean */
- #define CP_950 950 /* Taiwanese */
- #define CP_1027 1027 /* EBCDIC Extended Lower English */
-
-
- #define SNA_UNICODE 1 /* Result of Conversion is Unicode */
- #define SNA_MULTIBYTE 2 /* Result of Conversion is MultiByte */
-
- /* ********************* Functions ******************** */
-
- /* ***************************************************************** */
- /* Initialization Routine : Local Machine */
- /* CodePage : The CodePage which we need to support */
- /* return : 1 if CodePage Translations are Supported */
- /* 0 otherwise */
- /* ***************************************************************** */
-
- int WINAPI SnaNlsInit(UINT CodePage);
-
- /* ***************************************************************** */
- /* */
- /* Translation Routine */
- /* */
- /* Input */
- /* */
- /* lpSrcStr : Input, Source String */
- /* */
- /* lpDestStr : Output, Translated String */
- /* maybe NULL if out_length is 0 */
- /* */
- /* inCodePage : CodePage of incoming string */
- /* ignored if input is in unicode */
- /* */
- /* outCodePage: CodePage of translated string. */
- /* ignored if output is in unicode */
- /* */
- /* in_length : Length of input string */
- /* in characters if input is multibyte */
- /* in wide chars if input is unicode */
- /* */
- /* out_length : Length of output string */
- /* in characters if output is multibyte */
- /* in wide chars if output is unicode */
- /* */
- /* in_type : SNA_UNICODE - Unicode Input */
- /* SNA_MULTIBYTE - MultiByte Input */
- /* */
- /* out_type : SNA_UNICODE - Unicode Output */
- /* SNA_MULTIBYTE - MultiByte Output */
- /* */
- /* Options : Multiple usage */
- /* Trnsdt Options */
- /* Default Character for Translation (NLS) */
- /* */
- /* Output */
- /* */
- /* return val : 0 - Failure */
- /* Use GetLastError to retrieve error */
- /* Else */
- /* Num of chars(wide) written to lpDestStr */
- /* */
- /* lpDestStr : Translated String */
- /* */
- /* Options : Required buffer length if call failed */
- /* */
- /* Errors : (Retrieved by using GetLastError) */
- /* */
- /* ERROR_NOT_SUPPORTED */
- /* Possible Reasons: */
- /* NLS is not available */
- /* Input & Output are not of same type */
- /* */
- /* ERROR_BUFFER_OVERFLOW */
- /* Possible Reasons: */
- /* Output buffer is too small */
- /* */
- /* ERROR_INVALID_PARAMETER */
- /* Possible Reasons: */
- /* in_type or out_type is faulty */
- /* */
- /* ERROR_INVALID_DATA */
- /* Possible Reasons: */
- /* input data has a lead byte at end */
- /* */
- /* ERROR_OUTOFMEMORY */
- /* Possible Reasons: */
- /* malloc failed */
- /* */
- /* */
- /* ***************************************************************** */
-
- 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);
-
-
-
- #endif
-
- #ifdef __cplusplus
- }
- #endif
- #pragma option pop /*P_O_Pop*/
-