AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi String via Sendmessage unvollständig
Thema durchsuchen
Ansicht
Themen-Optionen

String via Sendmessage unvollständig

Ein Thema von Ajintaro · begonnen am 7. Okt 2015 · letzter Beitrag vom 19. Okt 2015
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Ajintaro
Ajintaro

Registriert seit: 20. Okt 2004
Ort: Sankt Augustin
138 Beiträge
 
Delphi XE6 Starter
 
#11

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 13:46
Hallo DP,

ein Foren-thread voller Emotionen... ich hoffe ich habe mti meinem Beitrag niemanden provoziert.
Bezüglich der Kernfrage, wieso der übermittelte String abgeschnitten wird wurde ich auf die richtige Spur gebracht:
Folgender code übertragt den String korrekt:

Sender:
Delphi-Quellcode:
DataStruct.cbData := 1 + (Length(Fmain.edit4.Text) * SizeOf(Char));
DataStruct.lpData := PWideChar(Fmain.edit4.Text);
Empfänger:
sMsg := PWideChar(Msg.CopyDataStruct.lpData);
Natürlich wären threads die klar bessere Lösung. Ich habe auch zuerst versucht, eine thread-basierte Lösung zu schreiben. Allerdings muss ich zugeben, dass das über meinem aktuellen (Delphi) Know-How ist. Es gibt unzählige Beitrage und Beispiele zu diesem Thema, aber ich konnte bisher keinen funktionierenden Code zustande bringen der einen POST request thread basiert absetzt.
Jaimy
DAoC 2.0 -> Camelot Unchained !

Geändert von Ajintaro ( 8. Okt 2015 um 15:01 Uhr) Grund: ANtwort angepasst
  Mit Zitat antworten Zitat
hathor
(Gast)

n/a Beiträge
 
#12

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 16:58
Inter-process communication (IPC)
In computing, Inter-process communication (IPC) is a set of techniques for the exchange of data among multiple threads in one or more processes. Processes may be running on one or more computers connected by a network. IPC techniques are divided into methods for message passing, synchronization, shared memory, and remote procedure calls (RPC). The method of IPC used may vary based on the bandwidth and latency of communication between the threads, and the type of data being communicated.
http://www.delphibasics.info/home/de...scommunication
.
IPC
Description Source Code: Source of program show how to create a component for communication between processes. Allows the exchange of information between the 32 and 64 bit processes, services, and isolated process (Low Level Integrity).
http://4coder.org/delphi-source-code/1009/
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#13

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 17:25
Zitat:
Die fachlich gängige Lösung sind hier nunmal Threads.
Wirklich?

Ich mache es über eine Callback.. da benötige ich keine Threads.

gruss
  Mit Zitat antworten Zitat
TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.891 Beiträge
 
Delphi 12 Athens
 
#14

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 17:31
Inter-process communication (IPC)...
IPC...
Und was bitte soll uns nun diese lieblos dahingeworfene Linksammlung sagen?
Thomas Breitkreuz
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#15

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 17:40
Zitat:
Die fachlich gängige Lösung sind hier nunmal Threads.
Wirklich?
Ich mache es über eine Callback.. da benötige ich keine Threads.
gruss
Es gibt ganz viele Wege nach Rom. Und jeder soll die Lösung wählen, die ihn glücklich macht.
Eines der im ersten Beitrag genannten Probleme war eben das Einfrieren der Anwendung, wenn das Internet mal wieder ein wenig braucht. Und da hilft allein ein Callback ja auch nicht, solange der bremsende Request im Main-Thread läuft.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#16

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 17:58
Zitat:
Es gibt ganz viele Wege nach Rom.
Würde eher nach RIO plädieren.

Zitat:
Es gibt ganz viele Wege nach Rom. Und jeder soll die Lösung wählen, die ihn glücklich macht.
Richtig.
Deshalb habe ich auch meine Herangehensweise mitgeteilt.
Aber gut wie du sagst jeder wie er will.

gruss

Geändert von EWeiss ( 8. Okt 2015 um 18:01 Uhr)
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#17

AW: String via Sendmessage unvollständig

  Alt 8. Okt 2015, 18:02
Aber es würde mich interessieren, wie Du das Einfrieren des Main-Threads verhinderst (sei es in Rom oder Rio).
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Ajintaro
Ajintaro

Registriert seit: 20. Okt 2004
Ort: Sankt Augustin
138 Beiträge
 
Delphi XE6 Starter
 
#18

AW: String via Sendmessage unvollständig

  Alt 9. Okt 2015, 13:36
Inter-process communication (IPC)...
IPC...
Und was bitte soll uns nun diese lieblos dahingeworfene Linksammlung sagen?
Hallo nochmal,

das Problem der String Übertragung wurde wie gesagt gelöst, wobei das Einfrieren auch die Sekundäranwendung betrifft im Fall von SendMessage.
Dieser Artikel war dabei sehr hilfreich: Windows Messages Tutorial

Ich habe mir das IPC Beispiel mal angesehen und es würde all meine Probleme lösen, ich habe nur Schwierigkeiten es komplett zu verstehen. Ich bin euch für eure Unterstützung sehr dankbar!

Habt alle ein schönes Wochenende!
Jaimy
DAoC 2.0 -> Camelot Unchained !
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#19

AW: String via Sendmessage unvollständig

  Alt 9. Okt 2015, 13:58
Aber es würde mich interessieren, wie Du das Einfrieren des Main-Threads verhinderst (sei es in Rom oder Rio).
Mit einem Event-getriebenen/asynchronem Programmierstil kann man auch ohne Threads "reaktive" Anwendungenen schreiben und das Verhungern der Benutzeroberfläche verhindern. Dafür würde man alle Aufgaben in kleine Happen zerteilen und nur asynchrone Systemcalls machen. Der oft zitierte IdleWorker ist afaik ein Schritt in diese Richtung.

Das ordentlich hinzugekommen ist aber nicht wirklich einfacher als Threads zu benutzen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: String via Sendmessage unvollständig

  Alt 9. Okt 2015, 14:14
Statt eines Autos kann man auch eine Porsche nehmen.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 04:54 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