AGB  ·  Datenschutz  ·  Impressum  







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

in D5 unbekanntes TYPE-Konstrukt

Ein Thema von 2ndSnoopy · begonnen am 5. Feb 2024 · letzter Beitrag vom 5. Feb 2024
Antwort Antwort
2ndSnoopy

Registriert seit: 18. Jan 2024
7 Beiträge
 
#1

in D5 unbekanntes TYPE-Konstrukt

  Alt 5. Feb 2024, 15:11
Delphi-Version: 5
Hallo *,
ich möchte eine Source aus D10 nach D5 übertragen.
Dabei bin ich auf folgendes Konstrukt in einer TYPE-Section gestoßen, das in D5 nicht bekannt ist.

CredentialUse = (cuInbound = SECPKG_CRED_INBOUND, cuOutbound = SECPKG_CRED_OUTBOUND, cuBoth = SECPKG_CRED_BOTH) ;

Ich habe keine Ahnung was das ist.
Gefunden habe ich, daß SECPKG_CRED_INBOUND etc. Systemkonstanten sind.
CONST
SECPKG_CRED_INBOUND = $00000001;
SECPKG_CRED_OUTBOUND = $00000002;
SECPKG_CRED_BOTH = $00000003;
SECPKG_CRED_DEFAULT = $00000004;
SECPKG_CRED_RESERVED = $F0000000;

Kann man (ich) das obige Statement in D5 nachbilden?

Für jeden Hinweis bin ich dankbar.

Matthias
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
672 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: in D5 unbekanntes TYPE-Konstrukt

  Alt 5. Feb 2024, 15:26
Meckert der Compiler über die Syntax mit dem "=" in der Typdefinition oder findet er einfach SECPKG_CRED_INBOUND et al. nicht? Die Syntax sollte per se auch in D5 funktionieren, das ist eine Ergänzung der orginalen enumeration types um verschiedene Windows-API Konstrukte (C/C++ enums) als Delphi enumerated types darstellen zu können. Das ging schon in Delphi 1 wenn mich mein Vergessnis nicht täuscht. Vermutlich enthält die D5 windows-unit aber einfach diese Konstanten und das zugehörige API nicht, das gabs vermutlich noch garnicht in der Windows-Version, für die D5 ausgelegt war.
Peter Below
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.149 Beiträge
 
Delphi 12 Athens
 
#3

AW: in D5 unbekanntes TYPE-Konstrukt

  Alt 5. Feb 2024, 15:57
Normal sind bei einem ENUM die Felder durchnummeriert, von 0 bis ...

Hier sind es Felder vordefinierten Werten. (via = zugewiessen, aus anderen Konstanten)
Alternativ kann man auch mit Dummy-Feldern auffüllen.

type MyEnum = (Null, One, Two, Three, Four);
was Folgendem entspricht
type MyEnum = (Null=0, One=1, Two=2, Three=3, Four=4);

Nun machen wir mal eine Lücke rein:
type MyEnum = (Null, One, Three, Four);
type MyEnum = (Null=0, One=1, Three=2, Four=3);
aber da oben ja die Namen und Werte verschoben sind, verschieben wir nun manull einen Wert
type MyEnum = (Null, One, Three=3, Four); (die 3 verschoben und danach wird wieder normal mit +1 weitergezählt)
oder
type MyEnum = (Null=0, One=1, Three=3, Four=4);

oder eben mit einem Dummy-Feld auffüllen
type MyEnum = (Null, One, _DUMMY_, Three, Four);


type CredentialUse = (_cu0, cuInbound, cuOutbound, cuBoth);
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 5. Feb 2024 um 16:02 Uhr)
  Mit Zitat antworten Zitat
2ndSnoopy

Registriert seit: 18. Jan 2024
7 Beiträge
 
#4

AW: in D5 unbekanntes TYPE-Konstrukt

  Alt 5. Feb 2024, 16:17
vielen herzlichen Dank für beide Antworten.
@himitsu: ich glaube ich habe es verstanden
dies ist sicher die richtige Lösung:

type CredentialUse = (_cu0, cuInbound, cuOutbound, cuBoth);

eine Zuweisung eines Wertes wie MyEnum = (Null=0,... ist in D5 jedoch nicht möglich.
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#5

AW: in D5 unbekanntes TYPE-Konstrukt

  Alt 5. Feb 2024, 16:49
eine Zuweisung eines Wertes wie MyEnum = (Null=0,... ist in D5 jedoch nicht möglich.
WIMRE kam das in D6/Kylix wegen Linux.
Uli Gerhardt
  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 21:31 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