Announcement

Collapse
No announcement yet.

Eigenes Record in DLL

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Eigenes Record in DLL

    Hallo zusammen ....<BR>
    Habe folgendes Problem: <BR>
    Wenn ich mein selbstdefiniertes Record ... <BR>
    type Demorecord=record <BR>
    X:char;<BR>
    Y:real;<BR>
    end; <BR>
    <BR>
    in eine .dll einbinde, meckert der compiler immer mit "inkompatiblen Typen".<BR>
    Das Record wurde jedoch in der .dll wie auch in der Application definiert.<BR>
    <BR>
    Wo liegt der Fehler ?<BR>
    Danke fuer Antwort<BR>
    Gruss Christian <BR>

  • #2
    Das Record wurde jedoch in der .dll wie auch in der Application definiert.<br>
    Genau darin liegt der Fehler. Das sind jetzt zwar zwei gleichlautende Typen, aber fuer Pascal sind das zwei unterschiedliche Typen, die deshalb inkompatibel sind.<br>
    Deklariere den Typen nur in einer Unit (interface-Sektion) und fuege diese Unit ins uses der anderen Unit ein. Am besten definiere eine Unit, die nur die Typen enthaelt und nimm sie ins uses aller Units auf, die das Record brauchen.<br>
    Falls du das record in eine Datei schreiben willst, so empfiehlt sich ein packed record zu deklarieren, da das weniger Platz braucht

    Comment


    • #3
      Hallo,

      ich habe das gleiche gebraucht. Das hat auch wunderbar in Delphi 7 funktioniert. Solange die Reckords sowohl in Anwendung und DLL gleich definiert sind, funktioniert das tadelos.

      Bye,

      Sebastia

      Comment


      • #4
        Hallo zusammen.<BR>
        Vielen Dank fuer die Information <BR>
        Funktioniert einwandfrei.<BR>
        <BR>
        Gruss und Danke Christian<BR&gt

        Comment

        Working...
        X