Announcement

Collapse
No announcement yet.

Builder XE, DLL Problem

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

  • Builder XE, DLL Problem

    Hi,
    dieses Problem habe ich schon in einem anderen Forum beschrieben, leider ohne Erfolg.

    Ich habe eine DLL von DS2006 nach C++Builder XE transferiert. Übersetzung ist fehlerfrei. Alle Funktionen die mit
    extern "C" {
    __declspec(dllexport) void GetAccessTask( int* iTyp, int* iTTDNo );
    .
    .
    .
    }
    angelegt sind, existieren nach der Übersetzung in der DLL.

    Die Class

    __declspec ( dllexport ) class TKalibFromTo
    {
    private:
    public:
    .
    .
    .
    };

    wird übersetzt, taucht aber z.B. nicht in der DLL bzw. .def-Datei (mit impdef erzeugt) auf.

    Wo liegt den hier mein Fehler?

    Danke für eine Antwort!

    MFG

    Dieter

  • #2
    Wenn die Klasse nicht in der DLL ist, wurde sie wohl nicht compiliert und gelinkt.Eine *.def ist nicht erforderlich. Die korrekten *.h werden benötigt

    http://www.marquardtnet.info/cecke/t...s.8/8_dll.html
    Christian

    Comment


    • #3
      Danke Christian,

      es gibt von mir nur ein Cpp- und ein h-File in dem DLL -Projekt. Wenn das Projekt compiliert und gelinkt wird, muss m.E. alles korrekt sein. Es ist ja nur ein Transfer des Projekts von DS2006 nach Builder XE. Mit dem def-File habe ich mir ja nur den Inhalt der DLL angeschaut.

      Comment


      • #4
        Also, das Problem ist gelößt.

        __declspec ( dllexport ) class Txyz // falsch, bzw. so war meine Deklaration DS2006

        class __declspec(dllexport) Txyz // so funktionierts in RADSTD XE


        Warum das so ist, keine Ahnung. Vielleicht weiß jemand mehr!

        Comment

        Working...
        X