Jump to content

UniUconvFromUcs: Difference between revisions

From EDM2
UniUconvFromUcs
 
m removed INCL_ as it appears to be not used
Line 31: Line 31:


=== Define (C/C++) ===
=== Define (C/C++) ===
INCL_???


=== Export name/Ordinal ===
=== Export name/Ordinal ===

Revision as of 06:06, 19 April 2006

UniUconvFromUcs

UniUconvFromUcs(uconvObj, ucsBuffer, ucsBufferLen, outBuff, outBuffLen, nonIdenticalConv)

Convert a UCS string to code page characters.

Parameters

uconvObj - UconvObject - input

The conversion object created from UniCreateUconvObject.

ucsBuffer - UniChar - input

The input buffer.

ucsBufferLen - (size_t *) - input/output

The input buffer's length, in bytes.

outBuff - (void **) - output

The output buffer.

outBuffLen - (size_t *) - output

Number of code page character elements in the outBuff.

nonIdenticalConv - (size_t *) - output

Number of non-identical conversions.

Constants

None

Returns

An integer with values of:

Module

Define (C/C++)

Export name/Ordinal

Calling conversion

Cdecl32

Example Code

UconvObject uconvObj;
UniChar     ucsBuffer;
size_t*     ucsBufferLen;
void**      outBuff;
size_t*     outBuffLen;
size_t*     nonIdenticalConv;
integer     rc;
...
rc = UniUconvFromUcs(uconvObj, ucsBuffer, ucsBufferLen, outBuff, outBuffLen, nonIdenticalConv);
...

Related Functions

UniconvToUcs UniStrFromUcs UniStrToUcs

Notes

The sequence of the code page characters in ucsBuffer is converted into a sequence of Unicode characters in outBuff. The code page was set by UniCreateUnconvObject call in the UconvObject.

Conversion is only on bytes that convert. The process stops converting on the first non-valid byte. If the outBuff isn't large enough, conversion ends on the UniChar previous to any buffer overflow. outBuff is updated truncating the point of failure to the end and updating the outBuffLen to indicate the number of successfully converted elements.

OS Version Introduced

OS/2 Warp