Hola,
Si no me equivoco, algo en tu código está "mal", y es que no indicas el "MIME/Type" del archivo en el método "AddFile"... he revisado un poco la ayuda, y, bueno, viene incluso el siguiente "ejemplo":
Código Delphi
[-]
uses
IdGlobalProtocols, IdMultipartFormData;
begin
AValues := TIdStringList.Create;
AValues.Values['usr'] := '"John Doe"';
AValues.Values['grp'] := 'public';
AValues.Values['fil'] := 'c:imageslogo.gif';
PostStream:= TIdMultiPartFormDataStream.Create;
ResponseStream := TIdStringStream.Create('');
try
PostStream.AddFormField('usr', AValues.Values['usr']);
PostStream.AddFormField('grp', AValues.Values['grp']);
PostStream.AddFile('fil', AValues.Values['fil'],
GetMIMETypeFromFile(AValues.Values['fil']));
IdHTTP1.Request.ContentType := PostStream.RequestContentType;
IdHTTP1.Post(sURL, PostStream, ResponseStream);
finally
Memo1.Text := ResponseStream.DataString;
ResponseStream.Free;
PostStream.Free;
AValues.Free;
end;
Pero, por más que le he dado vueltas no he conseguido que funcionase. También yo pruebo con un script PHP en el servidor. Pero, ya digo, no he conseguido que funcionase. Creo que algo se me escapa en todo esto...