File tree Expand file tree Collapse file tree 3 files changed +20
-7
lines changed
Expand file tree Collapse file tree 3 files changed +20
-7
lines changed Original file line number Diff line number Diff line change @@ -88,7 +88,7 @@ procedure TtgParamLoader.AddClass_TtgFileToSend(var AFormData: TMultipartFormDat
8888begin
8989 LFileToSent := AValue.AsType<TtgFileToSend>;
9090 if Assigned(LFileToSent.Content) then
91- AFormData.AddStream(AKey, LFileToSent.Content)
91+ AFormData.AddStream(AKey, LFileToSent.Content, LFileToSent.FileName )
9292 else
9393 AFormData.AddFile(AKey, LFileToSent.FileName);
9494end ;
Original file line number Diff line number Diff line change @@ -30,7 +30,17 @@ TtgTMultipartFormDataHelper = class helper for TMultipartFormData
3030 // / <summary>
3131 // / Add a form data Stream
3232 // / </summary>
33- procedure AddStream (const AFieldName: string; Data: TStream);
33+ // / <param name="AFieldName">
34+ // / Field Name
35+ // / </param>
36+ // / <param name="Data">
37+ // / Stream
38+ // / </param>
39+ // / <param name="AFileName">
40+ // / file name: "File.ext"
41+ // / </param>
42+ procedure AddStream (const AFieldName: string; Data: TStream; const AFileName: string = ' ' );
43+
3444 end ;
3545
3646 TtgMessageHelper = class helper for TTgMessage
@@ -89,12 +99,15 @@ function TAllowedUpdatesHelper.ToString: string;
8999
90100{ TtgTMultipartFormDataHelper }
91101
92- procedure TtgTMultipartFormDataHelper.AddStream (const AFieldName: string; Data: TStream);
102+ procedure TtgTMultipartFormDataHelper.AddStream (const AFieldName: string; Data: TStream; const AFileName: string );
93103var
94104 lFileName: string;
95105 LFileStream: TFileStream;
96106begin
97- lFileName := TPath.GetTempFileName;
107+ if AFieldName.IsEmpty then
108+ lFileName := TPath.GetTempFileName
109+ else
110+ lFileName := TPath.Combine(TPath.GetTempPath, AFieldName);
98111 try
99112 LFileStream := TFileStream.Create(lFileName, fmCreate);
100113 try
Original file line number Diff line number Diff line change @@ -1060,7 +1060,7 @@ TtgFileToSend = class
10601060 FileName: string;
10611061 Content: TStream;
10621062 constructor Create(const AFileName: string); overload;
1063- constructor Create(AContent: TStream); overload;
1063+ constructor Create(AContent: TStream; const AFileName: string = ' ' ); overload;
10641064 destructor Destroy; override;
10651065 end ;
10661066
@@ -1629,9 +1629,9 @@ constructor TtgFileToSend.Create(const AFileName: string);
16291629 raise EFileNotFoundException.CreateFmt(' File %S not found!' , [AFileName]);
16301630end ;
16311631
1632- constructor TtgFileToSend.Create(AContent: TStream);
1632+ constructor TtgFileToSend.Create(AContent: TStream; const AFileName: string );
16331633begin
1634- FileName := string.Empty ;
1634+ FileName := AFileName ;
16351635 Content := AContent;
16361636 if not Assigned(AContent) then
16371637 raise EStreamError.Create(' Stream not assigned!' );
You can’t perform that action at this time.
0 commit comments