29. november 2005 - 17:10Der er
4 kommentarer og 1 løsning
problemer med functionskald i dll
Hejsa,
Jeg prøver at bygge følgende dll i visual studio .net
__declspec (dllexport) int test(void) { /* test */ char* c = malloc(1);
return 1; }
og derefter kalde den fra vb, men hvis jeg gør det, så får jeg en helt forkert værdi tilbage. Hvis jeg ikke kalder en funktion (i dette tilfælde malloc) før jeg returnerer 1, så får jeg den rigtige værdi tilbage. Jeg gætter på, at det nok er adressen på funktionen, som jeg får tilbage, men hvorfor?
Har selv fundet fejlen... Jeg troede, at en long i VB var 32 bit, så den kunne sidestilles med C's int, men nej. Long er 64 bit, så nu bruger jeg Int32 i stedet
Det er en længere historie, men det er i bund og grund, fordi jeg også skal bruge kildekoden til dll'en i ren C...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.