???.txt
Andras Tantos
andras_tantos at yahoo.com
Sat May 21 00:12:25 CEST 2005
Hali!
> Na varj csak, az egesz raadasul full unicode rendszeren volt.
> FAT32, hosszu nevek, win XP alatt. Szo nincs kodlaprol. A progi megis
> panaszkodik ra... Nonszensz.
Na itt a tevedes. A rendszer nem volt full Unicode. Attol, mert a FS Unicode
neveket tarol, es az OS kezeli oket, meg nem biztos, hogy a 'teljes
rendszer' Unicode volt.
Valoszinuleg az tortent, hogy a program (Windows Commander?) a fajlnevet,
amit Unicode-ban kapott, valahol, valami oknal fogva Multibyte-ra (ASCII +
egyebek) konvertalta. Az erre valo API a WideCharToMultiByte nevre hallgat
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/intl/unicode_2bj9.asp).
Ez az a fuggveny, ami kodlapot fog hasznalni, es az o visszateresi erteke
lehet az, hogy a string nem abrazolhato a megadott kodlapon. Az, hogy a
program ???-eket jelenitett meg fajlnev helyett is erre utal. Ha a 'teljes
rendszerben' barki meghivja a fent emlitett fuggvenyt, ugy, hogy annak a
kimenetet es a bemenetet egyenertekunek tekinti (azaz ugy veli, hogy a
konverzio nem veszt informaciot), akkor a 'teljes rendszer' mar nem Unicode.
Osszefoglalva:
- Nem az OS a hibas
- Nem a FS a hibas
- Nem a Unicode a hibas
- Nem a konverzios fuggveny a hibas
- A program a hibas, aki a konverziot meghivta, es az eredmenyt vakon
felhasznalta.
Remelem igy mar vilagosabb...
Udv,
Tantos Andras
More information about the Elektro
mailing list