Struct an DLL übergeben funktioniert nicht
-
simon.gysi schrieb:
Ist dparent->DOpt wirklich ein TEST_Type* ?
SimonJa
taraneas schrieb:
Wie kompilierst Du Dll und Applikation?
clr:safe, clr:pure oder clr?Dll: /clr
App: /clr:pureMüsst ich das abändern ?
-
Nein, das passt.
-
Schau dir mal die Beschreibung zu diesem Compilerfehler an.
Es hat anscheinend nichts mit der Struktur zu tun, sondern mit dem Geltungsbereich des Aufrufs.
-
Naja aber sobald ich die Struktur bei der Parameterübergabe wegglasse funktioniert es ja - oder verstehe ich dich falsch ?
Deswegen dürfte es ja am Geltungsbereich nicht liegen..Ich dachte zunächst würde es vielleicht mit
typedef public struct { ...
gehen - aber auch da kommt die gleiche Fehlermeldung
-
Stell doch mal ein Minimalbeispiel als Projekt bereit.
-
So ich habe nun mal ein Minimalbeispiel erzeugt:
- es sind 2 Projekte:
a) Aufruf DLL: Die Anwendung die die Dll aufruft - der Funktionsaufruf ist in der Form.h ganz unten
-> gegebenenfalls müsst ihr noch unter Projekteigenschaften das Verzeichnis der "teststukt.h" anfügen - diese liegt in dem Struk DLL-Ordnerb) Struk DLL: Die DLL- der eine Struktur übergeben werden soll
Projekte im RAR-Format gepackt gibts hier:
http://netload.in/datei46eb23accf1b5151a9f9ee2468a0bfb2/struct_an_dll.rar.htmVielen Dank - für eure Mühe!
-
Ein paar Tipps:
-Schreib lieber ein kleines exemplarisches Programm, das deinen Fehler verdeutlicht, im Quellcode mit CodeTags hier ins Forum (meistens führt das Zusammenfassenfassen des Problems schon hin zur Lösung).
-Es werden sich mit Sicherheit nicht viele Forenmitglieder durch die vielen Links mit den tausenden von Werbungen durchklicken, um zu deinem Quellcode zu kommen.
-Nimm keine namespaces mit in den Header auf, sondern schreib im Header den kompletten Namen aus. Ist hilfreich bei größeren Projekten. So werden nicht durch das viele Includieren zusätzliche Namespaces hinzugenommen.
-using namespace in der Cpp-Datei verwenden.
-Klassennamen ausschreiben mit einem Namen, der die Eingenschaften der Klasse zeigt, damit keine Verwechslung auftreten kann.
-
Hallo, ich habe gerade das gleiche Problem!
Ist es mittlerweile gelöst worden?
-
WAS für ein Problem?
Hier wurde bisher noch keines gezeigt...
-
Doch sicher, das von Thurstan aus dem ersten Post. Ich kann ebenfalls kein struct an eine DLL übergeben, mit dem Fehler C3767.