AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) HWND_BROADCAST, ist relativ langsam, blockiert das System usw.
Thema durchsuchen
Ansicht
Themen-Optionen

HWND_BROADCAST, ist relativ langsam, blockiert das System usw.

Ein Thema von Kostas · begonnen am 11. Mai 2020 · letzter Beitrag vom 16. Mai 2020
 
Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.063 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

HWND_BROADCAST, ist relativ langsam, blockiert das System usw.

  Alt 11. Mai 2020, 17:04
Hallo Zusammen,

ich habe ein Testprojekt angehängt.
In diesem Projekt sendet und empfängt die Anwendung BROADCAST Nachrichten in einer Anwendung!

Die Test-Anwendung scheint so weit zu funktioniert und macht auch scheinbar keine Probleme da sie auch kaum Funktionalität beinhaltet. Integriere ich es jedoch in meiner Anwendung kommt es vor dass die Anwendung spürbar langsamer wird. Auch habe ich den Effekt dass wenn eine Nachricht gesendet wird und Thunderbird im Hintergrund aktiv ist, wird Thunderbird in den Vordergrund gezogen. Warum Thunderbird, keine Ahnung.

Die gesamte Technik habe ich in der Form BroatcastSenderReceiver.pas gesteckt. Ich binde die Form ein der MainForm ein und registriere einen Event.

Ich habe es in eine separate Form extrahiert und nicht in ein DataModul da SendMessage ein Form handle benötigt.

Das Ziel ist eigentlich, eine Datenbank-Anwendung wird auf einem Rechner zweimal gestartet, und läuft jeweils auf einem Monitor, wird auch so benötigt. Wenn die Anwendung A einen Datensatz ändert, soll die Anwendung B ein refresh durchführen wenn zufällig der gleiche Datensatz angezeigt wird. Als Datenbank verwende ich Firebird. Ich habe auch die Events benutzt die Firebird und Firedac anbietet, doch es gab fälle da hat es eben nicht zuverlässig funktioniert. Deshalb versuche ich jetzt selbst über BROADCAST Nachrichten.

Ich habe leider keine Erfahrung mit Windows messaging. Was zuverlässig funktionieren würde wäre eine TCP Kommunikation. Für eine einfache Benachrichtigung wollte ich eben keinen Listener aufsetzen. Möglicherweise sollte ich keine BROADCAST Nachricht senden sondern nur eine bestimmte registrieren, aber wie gesagt, da habe ich keine Erfahrung damit.

Möglicherweise ist jemand dabei der Erfahrung mit Windows messaging hat und kann mir an den angehängten Projekt zeigen was nicht in Ordnung ist.
Angehängte Dateien
Dateityp: zip SenderReceiverMain.zip (2,9 KB, 6x aufgerufen)
  Mit Zitat antworten Zitat
 


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 10:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz