Hvis class ligge i ens program skal den jo bare kalds på følgene måde hent.modtag(); ...... Men hvis den ligge i en dll fil, hvordan kalder man så klassen???
Jeg håber der er nogen der kan hjælpe mig. Jeg skal lige sige at jeg bruger C++ Buileder 5.
Jeg kender det kun fra MC++, og du bruger du en Definition File, i den kunne følgende funktioner stå som skal exporteres:
------------------------- LIBRARY "dll.dll"
EXPORTS AddTwice -------------------------
Så vil funktionen AddTwice kunne kaldes fra et andet program.
Men jeg kender kun til at gøre det ved funktioner, jeg har ikke prøvet med funktioner fra et objekt. Prøv eventuelt at slå op i hjælpen på Export. Håber det kan hjælpe lidt.
Har jeg ikke misforstået dit spørgsmål ? For jeg har svaret på hvordan du exportere funktioner, hvis du selv har skrevet dll'en. Vil du have svar på hvordan man kalder funktioner fra en dll ?
Sådan kalder du en funktion, ved ikke om der findes andre lettere måder at gøre det i BCB på: ------------------------------------- // Function pointer type typedef void (*MYFUNCTION)(char *, int);
// Handle to the DLL HINSTANCE hDLL = 0;
// Function pointer MYFUNCTION pfnTheFunction = 0;
if((hDLL = LoadLibrary("mylib.dll")), hDLL) { // Successfully loaded library, find where function is pfnTheFunction = (MYFUNCTION)GetProcAddress(hDLL, "myfunction");
if(pfnTheFunction) { // The function was found, so call it (*pfnTheFunction)("Run-time DLL message!", MB_YESNO); }
Sådan - og dertil skal så bare lige tilføjes at du *IKKE* kan tilgå variabler i DLL'en direkte - du skal lave en funktion du kan kalde, der henter værdien til dig:
Jeg svarede på spørgsmålene, men han har aldrig svaret om han kunne bruge svarene. For hvis han har, burde de vel gå til mig.
Så det må være op til ham.
Casper W.
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.