El archivo que leo, lo genera un máquina industrial (por cierto es sueca y el sistema operativo es VxWorks), son un listado de errores, la máquina los genera en diferentes idiomas. Quizás cambie la coficación según el idioma que tenga, no lo sé. En cuanto pueda lo averiguo.
@Edson, al final usando GuessEncoding(), averigué que la codificación del archivo era CP1252. Así que usando la función CP1252ToUTF8, resolví el problema.
@JuhaManninen, no entiendo bien a que te refieres cuando dices que debería ser todo unicode. Te refieres al fichero que lee mi programa en Lazarus?, o que debería convertir las cadenas a unicode en el momento que las leo en mi programa?.
Saludos
/BlueIcaro
P.D. @JuhaManninen, no me imaginaba que supieras castellano, pensé que no eras hispanoparlante, por el nombre.