WideString ist nichts besondertes und hierfür ist es eigentlich auch absolut total egal.
Vom Inhalt her ist es wie der UnicodeString, nur ohne Referenzzählung und von einem anderen SpeicherManager behandelt.
Er kapselt einfach nur ein paar APIs der OleAut32 (
DLL) ->
SysAllocStringLen, SysReAllocStringLen, SysFreeString und SysStringLen.
Unicode im Windows war mal USC-2 (gaaaaaaanz zu Beginn) und ist ansonsten UTF-16.
Aber bitte nicht mit UTF-8 oder UTF-7 vergleichen, denn von der Formatierung her ist es komplett anders.
https://en.wikipedia.org/wiki/UTF-16
Im Prinzip ist es für uns aber auch eigentlich egal.
Unicode hat 2 Byte pro Zeichen, aber es gibt einen Bereich, da werden aufeinanderfolgene Chars wie Eines betrachtet, annähernd Vergleichbar zu den Zeichen ab #80 im UTF-8.
Es gibt sogar Bereiche, da ist komplett alles egal, denn was man damit Macht, das ist jedem Programm/Menschen selbst überlassen.