LabVIEWForum.de - C# PInvoke bei Aufruf von LVDLLStatus

LabVIEWForum.de

Normale Version: C# PInvoke bei Aufruf von LVDLLStatus
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe in LV eine DLL erzeugt, diese möchte ich in C# benutzen.
Beim Aurfue der Funktion "LVDLLStatus" erhalte ich doch leider den Fehler "PInvokeStackImbalance".
Bei der NI-Seite gibt es ein Beispiel wie der Aufruf in C# sein sollte. Habe mich exact an das Beispiel gehalten.
Ändere ich die Einstellungen des Visual-Studios so, das diese Exception nicht gefangen wird, funktionieren die Funktionsaufrufe problemlos.
Gibt es noch irgendwelche Einstellungen die berücksichtigt werden müssen?
Habs gelöst,

liegt am Einbinden der LV-DLL, CallConvention muss noch als Parameter eingefügt werden.
(30.01.2012 10:05 )beginner85 schrieb: [ -> ]Hallo zusammen,

ich habe in LV eine DLL erzeugt, diese möchte ich in C# benutzen.
Beim Aurfue der Funktion "LVDLLStatus" erhalte ich doch leider den Fehler "PInvokeStackImbalance".
Bei der NI-Seite gibt es ein Beispiel wie der Aufruf in C# sein sollte. Habe mich exact an das Beispiel gehalten.
Ändere ich die Einstellungen des Visual-Studios so, das diese Exception nicht gefangen wird, funktionieren die Funktionsaufrufe problemlos.
Gibt es noch irgendwelche Einstellungen die berücksichtigt werden müssen?

Also DLL mit PInvoke in .Net aufrufen ist schon etwas masochistisch. DLL Interfaces sind unmanaged, und dann muss man viel Arbeit machen um darum herum imanaged .Net Interface zu machen. Warum keine .Net Assembly vom LabVIEW Code generieren?
Referenz-URLs