La Web del Programador: Comunidad de Programadores
 
    Pregunta:  11867 - CARACTERES ESPECIALES
Autor:  noelia Fernández
Hola amigos,en mi aplicación hago una fusión de documentos; es decir,con los datos de la aplicación y una plantilla desde Delphi genero un documento word.
El problema es que si en algún campo insertan caracteres como Ç,ü, o tildes el word no los interpreta y pone caracteres "raros".
Sabe alguien porque puede ser esto y como puede arreglarse?
Muchas gracias.

  Respuesta:  qdevelop2000
Te envío 2 funciones muy útiles para convertir "Oem a Ansi" y "Ansi to Oem" cualquier string, necesarias para solucionar tu problema.
Haz la conversión antes de enviar al Word y prueba.
Luego cuéntame que tal te ha ido.

function OemToAnsiString(const Texto: string): string;
begin
SetLength(result, Length(Texto));
OemToAnsiBuff(@Texto[1], @result[1], Length(texto));
end;

function AnsiToOemString(const Texto: string): string;
begin
SetLength(result, Length(Texto));
AnsiToOemBuff(@Texto[1], @result[1], Length(texto));
end;