Avatar billede code_freak Nybegynder
07. november 2003 - 19:06 Der er 9 kommentarer og
1 løsning

DLL filer

Hvordan er brugen af Dll filer, og hvordan for jeg mit program til at hente fra dem?
Avatar billede Slettet bruger
07. november 2003 - 19:09 #1
Avatar billede arne_v Ekspert
07. november 2003 - 19:10 #2
Normalt:
  får man en .h + en .lib + en .dll
  man includer .h i sin kode
  man linker mod .lib
  .dl loades dynamisk at runtime
Avatar billede code_freak Nybegynder
07. november 2003 - 19:17 #3
takker :)
Avatar billede soepro Nybegynder
14. november 2003 - 08:50 #4
I C++ Builder kan du lave et såkaldt import library på basis af en hvilken som helst .DLL - men prototyperne til de enkelte funktioner i DLL'en, skal du kende på forhånd.

Jeg har et simpelt DLL eksempel (til BCB), hvis du ønsker det.
Avatar billede code_freak Nybegynder
14. november 2003 - 13:29 #5
Jeg bruger selv VC++ til at compilere med, men ellers tak
Avatar billede soepro Nybegynder
14. november 2003 - 15:33 #6
code_freak >> Måske kan du alligevel bruge dette til inspiration:

(Hoved-program)
#include <windows.h>
#include <conio.h>
#include "console_DLL.h"

#pragma link "console_DLL.lib";

//---------------------------------------------------------------------------
int main(int, char*)
{
  double number = 123.5;

  clrscr();
  cputs("DLL tester - console_DLL\r\n");

  cprintf("Value %f DOUBLED by DLL : %f\r\n", number, changeValue(number, true));
  cprintf("Value %f HALVED  by DLL : %f\r\n", number, changeValue(number, false));

  cputs("Done - hit a key ..."); getch();
  return 0;
}


(DLL)
#include <windows.h>
#pragma hdrstop

#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
  MessageBox(NULL, "In DLLEntryPoint", "", MB_ICONINFORMATION | MB_OK);
  return 1;
}

double dblValue(double);
double halfValue(double);
extern "C" __declspec(dllexport) double changeValue(double, bool);

double dblValue(double value)
{
  return 2* value;
}

double halfValue(double value)
{
  return value / 2.0;
}

double changeValue(double value, bool UpValue)
{
  return UpValue ? dblValue(value) : halfValue(value);
}
Avatar billede dr.truti Nybegynder
19. november 2003 - 00:09 #7
soepro: Jeg kunne i hvertfald bruge det til noget ;-)
Tak!

Truti
Avatar billede soepro Nybegynder
19. november 2003 - 09:09 #8
Truti > Selv tak. Hvis du synes det var pointene værd, skal du bare acceptere mit svar.
Avatar billede arne_v Ekspert
19. november 2003 - 09:16 #9
Nu var det ikke ham der havde stillet spørgsmålet ...
Avatar billede soepro Nybegynder
19. november 2003 - 10:15 #10
arne_v > ooops, havde jeg ikke lige bemærket !
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester