I have some confusion regarding WideCharToMultiByte function - we need to pass the codepage of the multibyte string in the first param of the function - Now my confusion is why this param is required? As the every unicode character is unique and there is no overlap so where this is required?