AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Bitweise Parameter füllen in Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

Bitweise Parameter füllen in Delphi

Ein Thema von ognif · begonnen am 28. Jun 2019 · letzter Beitrag vom 29. Jun 2019
 
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.643 Beiträge
 
Delphi 12 Athens
 
#5

AW: Bitweise Parameter füllen in Delphi

  Alt 29. Jun 2019, 09:41
Wenn ich nur citCreate übergebe, bekomme ich 2 zurück.
Wenn ich nur citVerify übergebe, bekomme ich 4 zurück.
Bei beiden Werten bekomme ich 6 zurück.
Die Werte stimmen aber nicht mit der Enmueration überein.
Tun sie doch!

Delphi-Quellcode:
TCreateImageTask = (
  citCreate = 1,
  citVerify
);
In Delphi hat das erste Element einer Enumeration den Ordinalwert 0 - außer man überschreibt das explizit, wie du das mit citCreate = 1 machst. Damit bekommt citCreate den Ordinalwert 1 und citVerify den Ordinalwert 2.

Baust du aus nun aus diesen Werten ein Set, daß du dann als Integer auswertest, dann entspricht ein citCreate einem Wert von 2^1 = 2 und citVerify von 2^2 = 4. Sind beide gesetzt, kommt logischerweise eine 6 heraus. Das passt zu deinen Beobachtungen.

Ich konnte jetzt aber noch keine Beschreibung entdecken, wie der Gegenpart (die DLL) die Daten erwartet. Deswegen kann ich auch nicht sagen, wie es richtig heißen muss.

Außerdem wäre die Angabe deiner Delphi-Version hilfreich. Nur so können wir hier qualifizierte Antworten zu geben, die auch von deiner Version unterstützt werden.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  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 05:59 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