AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte FRITZ!Box Komponente v0.17

FRITZ!Box Komponente v0.17

Ein Thema von Garfield · begonnen am 16. Feb 2014 · letzter Beitrag vom 26. Dez 2023
Antwort Antwort
Benutzerbild von Garfield
Garfield

Registriert seit: 9. Jul 2004
Ort: Aken (Anhalt-Bitterfeld)
1.335 Beiträge
 
Delphi XE5 Professional
 
#1

AW: FRITZ!Box Komponente

  Alt 27. Mär 2014, 17:43
Neue Version 0.17.

Ich habe die Komponente überarbeitet und die Merkmale welche nicht mehr funktionierten entfernt sowie den Anrufmonitor integriert. Wenn man angemeldet ist/war und das Telefonbuch geladen ist, werden wenn möglich bei der Anrufsignalisierung die Namen mitangezeigt. Hinzu gekommen ist ein wenig WLAN.
Gruss Garfield
Ubuntu 22.04: Laz2.2.2/FPC3.2.2 - VirtBox6.1+W10: D7PE, DXE5Prof
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#2

AW: FRITZ!Box Komponente v0.17

  Alt 9. Mär 2015, 14:41
Hallo Garfield,

ich teste gerade deine Komponente mit XE7 und muß feststellen, daß dabei ein paar Löcher im Speicher zurückbleiben:

An unexpected memory leak has occurred. The unexpected small block leaks are:
85 - 92 bytes: TStringList x 8

Meine Recherche ergab, daß fReceived daran schuld ist: Diese Stringliste wird in Zeile 2406 erzeugt, aber nicht wieder freigegeben:
Delphi-Quellcode:
constructor THTTPRequest.create;
{*******************************************************************************
*  -1- Klasse erstellen.
}

begin
  inherited;
  fContent := '';
  fReceived := TStringList.Create;
  fPort := 80;
  fHTTPSend.Method := 'GET';
  fHTTPSend.FileURL := '';
  fHTTPSend.Hostname := '';
  fHTTPSend.Accept := '*/*';
  fHTTPSend.ContentType := 'text/html, text/xml';
  fHTTPSend.ContentLength := 0;
  fHTTPSend.Soap.Namespace := '';
  fHTTPSend.Soap.Request := '';
  FillChar(fHTTPRcvd, SizeOf(fHTTPRcvd), 0);
end;

Durch Einfügen einer Zeile in die Destroy-Methode der Klasse THTTPRequest konnte der Fehler behoben werden:
Delphi-Quellcode:
{$IfDef DELPHI}
destructor THTTPRequest.destroy;
{*******************************************************************************
*  -1- Klasse freigeben.
}

begin
  if Assigned(fReceived) Then fReceived.Free; // meine Ergänzung
  inherited;
end;
{$EndIf}
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#3

AW: FRITZ!Box Komponente v0.17

  Alt 9. Mär 2015, 14:45
Ganz nebenbei:
Zitat:
if Assigned(fReceived) Then fReceived.Free;
ist faktisch dasselbe wie
fReceived.Free; Man soll ja eben deshalb Free statt Destroy verwenden, weil Free intern die eigene Referenz prüft, da muss man das ja nicht außerhalb noch einmal machen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#4

AW: FRITZ!Box Komponente v0.17

  Alt 9. Mär 2015, 14:57
Okay, danke, wo du recht hast
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#5

AW: FRITZ!Box Komponente v0.17

  Alt 9. Mär 2015, 15:01
Ich seh das öfter, es ist ja auch nicht falsch, aber eben unnötig
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#6

AW: FRITZ!Box Komponente v0.17

  Alt 9. Mär 2015, 15:48
@Garfield:

Noch ein Fehler: Nach dem Start des Anrufmonitors – und selbstverständlich vorausgegangener Anmeldung – hängt deine Testanwendung und läßt sich nur noch via Taskmanager beenden. Das kann ich jetzt erstmal nicht beheben, dazu kenne ich mich mit der Materie zu wenig aus
  Mit Zitat antworten Zitat
noisy_master

Registriert seit: 17. Jun 2009
Ort: Wolfenbüttel/Baddeckenstedt
263 Beiträge
 
Delphi XE5 Professional
 
#7

AW: FRITZ!Box Komponente v0.17

  Alt 12. Mär 2015, 20:35
Ich habe die Komponente auch gerade in der Mache.
Bei mir funktioniert der Anrufmonitor wunderbar!
(allerdings unter XE5)
Dirk

Geändert von noisy_master (12. Mär 2015 um 20:39 Uhr) Grund: Compiler hinzugefügt
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:43 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