Import een DLL

Status
Niet open voor verdere reacties.

HelpElec

Gebruiker
Lid geworden
6 mrt 2013
Berichten
102
Hallo allemaal,

Ik heb een vraag over het gebruiken van een DLL in Visual Studio 2010. Ik heb een specifieke DLL, die niet als reference toegevoegd kan worden. Nu gebruik ik
Code:
[DllImport("....dll", CharSet = CharSet.Unicode)] public static extern long Function(int para1, char para2, long para3)

uit System.Runtime.InteropServices. Maar hier krijg ik een soort exception op, PInvokeStackImbalance. Zijn er misschien nog andere opties om dit te doen? Of is dit op te lossen?

Dank!
 
Helemaal bovenaan:

[cpp]using ...[/cpp]
 
Ja hoor. Ik gebruik die tag alleen maar voor de syntaxis highlighting.
In C++ gebruik je trouwens #include<...> ;)
 
Okay dank je! Dus ipv DLLImport zet je de DLL tussen de usings als 1using ...dll;
?
 
Oh wacht. Hier heb ik overheen gelezen:
HelpElec zei:
die niet als reference toegevoegd kan worden.

Waarom kan de DLL niet als reference toegevoegd worden?
 
Ik heb intussen vernomen van de producent dat de DLL met C++ Builder is gemaakt. Vanwege Common Object File Format (Visual Studio) en Object Model Format (Borland) is het dan niet mogelijk om deze in MS Visual Studio te gebruiken... Ik weet hier verder helemaal niks van, alleen dat het ellende oplevert.
Nieuwe topic: Is het mogelijk om DLL's te converten van Borland C++ naar Visual C#? Weet iemand hier iets over?
 
Laatst bewerkt:
Geen probleem!

Ja, ik heb me er toch maar niet aan gewaagd en ben met een andere verder gegaan.
Bedankt voor de hulp!
 
Hallo HelpElec,

Ik heb ook even mee gekeken, er zijn verschillende opties denk ik.
Je kunt de DLL converteren, er zijn verschillende converters te vinden maar dit ziet er allemaal maar een beetje tricky uit.

Je kunt ook je dll op een andere manier aanroepen, bijvoorbeeld zoals beschreven hier: http://www.adp-gmbh.ch/csharp/call_dll.html
Wat misschien ook nog kan is het speciaal exporteren vanuit borland en importeren vanuit C# beschreven zoals hier: http://stackoverflow.com/questions/...-in-c-sharp-net-system-stackoverflowexception

Maar ik zie dat je vraag is opgelost dus het zal gelukt zijn :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan