Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dword-Puffer mit String vergleichen. (https://www.delphipraxis.net/111199-dword-puffer-mit-string-vergleichen.html)

Rifman 31. Mär 2008 13:59


Dword-Puffer mit String vergleichen.
 
Hallo Leute,

gibt es eine Funktion, womit man einen Puffer aus Bytes(z.B einen dword-Puffer) mit einem String vergleichen kann?

Danke.

MrKnogge 31. Mär 2008 14:00

Re: Dword-Puffer mit String vergleichen.
 
Schreib doch einfach beide in einen Stream und vergleiche dann.

Christian Seehase 31. Mär 2008 14:03

Re: Dword-Puffer mit String vergleichen.
 
Moin Rifman,

da nicht genau ersichtlich ist, was Du denn nun vergleichen willst: Schau Dir doch mal CompareMem an.

Rifman 31. Mär 2008 14:10

Re: Dword-Puffer mit String vergleichen.
 
Ok, vielleicht hätte ich mehr angeben müssen, ich will eine Funktion in Indy-UDPRead schreiben, die einen bereich vom Packet(Dieser Bereich habe ich in einem Puffer als dword zwischengespeichert) mit einem String, den ich im Edit1 eingebe.

shmia 31. Mär 2008 14:18

Re: Dword-Puffer mit String vergleichen.
 
Delphi-Quellcode:
s := Edit1.Text; // dein String
if CompareMem(PChar(s), @DWord_buffer[0], Min(Length(s), Sizeof(DWord_buffer)) ) then
   ShowMessage('Daten gleich')
else
   ShowMessage('Daten verschieden')
Das mit der Min-Funktion kannst du auch anderst machen.

Rifman 31. Mär 2008 14:20

Re: Dword-Puffer mit String vergleichen.
 
Zitat:

Zitat von shmia
Delphi-Quellcode:
s := Edit1.Text; // dein String
if CompareMem(PChar(s), @DWord_buffer[0], Min(Length(s), Sizeof(DWord_buffer)) ) then
   ShowMessage('Daten gleich')
else
   ShowMessage('Daten verschieden')
Das mit der Min-Funktion kannst du auch anderst machen.

Dankeschön!

Rifman 31. Mär 2008 14:36

Re: Dword-Puffer mit String vergleichen.
 
Aber was ist jetzt wenn vergleichen will, ob ein Pufferinhalt kleiner oder größer als der andere ist?

shmia 31. Mär 2008 15:07

Re: Dword-Puffer mit String vergleichen.
 
Zitat:

Zitat von Rifman
Aber was ist jetzt wenn vergleichen will, ob ein Pufferinhalt kleiner oder größer als der andere ist?

Du kannst auch beides als String vergleichen:
Delphi-Quellcode:
var
  a, b : string;
begin
  SetString(a, PChar(@Word_buffer[0)], Laenge_der Daten_in_DWord_Buffer);
  b := Edit1.Text;
  if a > b then ....

Rifman 31. Mär 2008 15:29

Re: Dword-Puffer mit String vergleichen.
 
Optimal!
D.h. damit kann ich jetzt den Inhalt vergleichen und nicht die Größe oder?

shmia 31. Mär 2008 15:32

Re: Dword-Puffer mit String vergleichen.
 
Zitat:

Zitat von Rifman
D.h. damit kann ich jetzt den Inhalt vergleichen und nicht die Größe oder?

Du hast jetzt zwei Strings; du kannst die Längen vergleichen oder den Inhalt oder beides, was immer du willst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 Uhr.
Seite 1 von 2  1 2      

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