AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Fehler in Record-Ausrichtung bei Übergabe an Visual C DLL
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler in Record-Ausrichtung bei Übergabe an Visual C DLL

Ein Thema von oki · begonnen am 30. Dez 2002 · letzter Beitrag vom 5. Jan 2003
Antwort Antwort
jbg

Registriert seit: 12. Jun 2002
3.485 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1
  Alt 3. Jan 2003, 23:43
Eines würde mich mal interessieren. Wer hat denn diese Header-Übersetzung geschrieben? Der "BOOL -> Boolean" Fehler ist noch der kleinste. Was ich gerade feststellen musste, ist, dass Delphi die Aufzählungstypen in 1 Byte quetscht, wohingegen C++ 4 Bytes beansprucht. Somit stimmt der Typ TTempConnect nicht mehr. Nachdem ich die Headerdatei überarbeitet habe. Läuft das Verbindung Setzen reibungslos.

Da du schriebst, dass du Delphi 5 einsetzt, war es natürlich nicht gerade leicht, eine geeignete Möglichkeit zu finden, einen Aufzähungstyp auf 4 Byte zu erweitern. Unter Delphi 6 ginge dies ganz einfach so:
TMapColorIndex = (MCI_..., ..., MCI_TRIM_TO_32BIT=$0fffffff); Unter Delphi 5 geht dies nicht. Und da ich keine Lust hatte für jeden Wert eine Konstante mit laufender Nummer zu schreiben (bei 270 Zeilen schreibe ich mir ja die Finger wund). habe ich einen kleinen Zwischen Record gebaut.
Delphi-Quellcode:
_TMapColorIndexType =
  (MCI_BUILDUP_INNER,
  MCI_WATER_INNER, ...);

TMapColorIndex = packed record
  case Integer of
    0: (Value: _TMapColorIndexType);
    1: (Int: Integer);
end;
Setzen kann man nun die einzelnen Werte über das Feld Value:
Delphi-Quellcode:
var m: TMapColorIndex;
m.Value := MCI_BUILDUP_INNER;
Angehängte Dateien
Dateityp: zip MapTest_109.zip (18,3 KB, 1x aufgerufen)
  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 04:02 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