AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Copy funktioniert nicht immer?

Ein Thema von draGo · begonnen am 18. Okt 2006 · letzter Beitrag vom 18. Okt 2006
Antwort Antwort
draGo

Registriert seit: 4. Apr 2006
44 Beiträge
 
Delphi 7 Personal
 
#1

Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 16:48
Moin DP,

ich möchte (wie man sicherlich aus dem Thementitel entnehmen kann ^^) mit der Copy Funktion arbeiten...
Das funktioniert auch soweit..zumindest bei folgendem:

x := Copy('String',1,3); // Hier ist x = "Str" beim auslesen eines Sockets mit

x := Copy(ClientSocket1.Socket.ReceiveText,1,3); kommt überhaupt nichts heraus...bzw. ein leerer String.
Welche Ursachen hat das / wie kann ich das beheben?

mfG
draGo
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

Re: Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 16:49
Vielleicht weil

ClientSocket1.Socket.ReceiveText = '' ?

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

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

Re: Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 16:50
Was steht denn in "ClientSocket1.Socket.ReceiveText" drin?

Nur zum Testen ... speichere das mal in einem String und lasse Dir den Anzeigen, meinetwegen via ShowMessage().
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 16:54
.ReceiveText wird ne property sein, dann funktioniert das so nicht. Speichere den Wert zuerst in eine lokale Stringvariable und wende Copy dann auf diese an.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5

Re: Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 16:59
Hi,

das liegt darann, weil du VORHER wahrscheinlich schonmal ReceiveText aufgerufen hast. Das funktioniert aber nur einmal. Beim aufruf der Funktion/Property werden die geholten Daten aus dem Puffer entfernt.

Lies die Daten zuerst in einen String und arbeite dann mit diesem, also:

Delphi-Quellcode:
s := socket.ReceiveText;
x := Copy(s,...
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
draGo

Registriert seit: 4. Apr 2006
44 Beiträge
 
Delphi 7 Personal
 
#6

Re: Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 17:06
Hallo,

ich habe den empfangenen Text auch schon in eine variable gespeichert..selbe Ergebnis. (nichts...)

//EDIT: *mit hand vor stirn klatsch* Sorry...hatte doch noch etwas übersehen. Tatsächlich wurde es vorher schoneinmal benutzt
Nunja, danke Jetzt funktioniert es.

mfG
draGo
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Copy funktioniert nicht immer?

  Alt 18. Okt 2006, 17:08
Hast du dir mal angesehen, was .ReceiveText zurückliefert?
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort


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 09:29 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