Solucionar bug de archivos adjuntos en D2009

Me imagino que ya sabrán que existe un bug que afecta a los nombres de archivos adjuntos a un email cuando se trabaja con la versión de indy que viene con D2009, pues bien se puede solucionar de dos formas:

A) Actualizar D2009 con la última versión de indy Tiburón, desde indy.fulgan.com

o bien hacer los siguiente:

1) Copiar el archivo IdMessageClient.pas de la carpeta D2009 (
C:\Program Files\CodeGear\RAD Studio\6.0\source\Indy\Indy10\Protocols\IdMessageClient.pas) al directorio del proyecto.

2) Actualizar IdMesageClient.pas dejándolo como sigue:

01.procedure TIdMessageClient.SendBody(AMsg: TIdMessage):
02.begin
03....
04. if LFileName <> '' then begin
05. IOHandler.WriteLn(';');
// inserted for QC 66867, between original line 1214/1215
06. IOHandler.Write(' name="' + LFileName + '"');

07. end;
08. IOHandler.WriteLn;
09. IOHandler.WriteLn('Content-Transfer-Encoding: ' +LAttachment.ContentTransfer); 10. // next line fixed for QC 66867, changed IOHandler.WriteLn to IOHandler.Write
11. IOHandler.Write('Content-Disposition: ' + LAttachment.ContentDisposition);

12. if LFileName <> '' then begin
13. IOHandler.WriteLn(';'); // inserted QC 66867, line 1220/1221
14. IOHandler.Write(' filename="' + LFileName + '"');

15. end;
16....
17.end;

3) Grabar y hacer un re-Build del proyecto.
4) Verificar que IdMessageClient.dcu ha sido creado en la carpeta del proyecto.

También se debería reemplazar los siguientes archivos de D2009 :

C:\Program Files\CodeGear\RAD Studio\6.0\source\Indy\Indy10\Protocols\IdMessageClient.pas

y actualizar el archivo IdMessageClient.dcu de las siguientes carpetas:

1) C:\Program Files\CodeGear\RAD Studio\6.0\lib\Indy10\IdMessageClient.dcu
2) C:\Program Files\CodeGear\RAD Studio\6.0\lib\debug\Indy10\IdMessageClient.dcu


No hay comentarios:

Publicar un comentario