![]() |
TJSonObject Freigabe
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo
Ich wollte mit privat schnell mal Währungskurse holen mit Fixer.io API.
Delphi-Quellcode:
Will ich LJObj freigeben, erhalte ich eine AV.
procedure TFrmMain.Button1Click(Sender: TObject);
Var LHttp: THttpClient; LResp: IHttpResponse; LJObj: TJSonObject; LJRates: TJSonObject; LUrl: string; I: Integer; begin LUrl := BaseUrl + 'latest?access_key=' + Key + '&symbols=USD,GBP,NOK,HKD&format=1'; LHttp := THTTPClient.Create; try LResp := LHttp.Get(LUrl); LJObj := TJSONObject.ParseJSONValue(LResp.ContentAsString(TEncoding.UTF8)) as TJSONObject; try LJRates := LJObj.GetValue<TJSONObject>('rates'); try for I := 0 to LJRates.Count - 1 do begin Memo1.Lines.Add(LJRates.Pairs[I].JsonString.Value); Memo1.Lines.Add(LJRates.Pairs[I].JsonValue.Value); end; finally LJRates.Free; end; finally //LJObj.Free; end; finally LHttp.Free; end; end; LJRates kann ich freigeben. Aber was ich auch mache, am Ende erhalte ich beim Verlassen Memory Leaks. Was mache ich falsch? Danke Frank |
AW: TJSonObject Freigabe
Versuch mal, LJObj freizugeben, aber nicht LJRates. Letzteres ist ja ein Kindobjekt des Ersteren und wird von diesem automatisch mit freigegeben, deshalb auch die AV.
|
AW: TJSonObject Freigabe
:oops:
Vielen Dank, genau so funktioniert es! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz