Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> C /C + + Programming >> Content
Hoe maak je een functie Prototype in DLL
Een Dynamic Link Library of DLL Get , kan een aanvraag tot alleen het noodzakelijke minimum uitvoerbare code te laden in het geheugen tijdens runtime . Wanneer het programma vraagt ​​een functie in een DLL-bestand , het besturingssysteem laadt de DLL in het geheugen volgens de specificaties van de programmeur . Zolang het lopende programma geen DLL- functie verwijzen , de DLL hoeft geen ruimte innemen . Dit bespaart hulpbronnen en verhoogt runtime prestaties . Als de bibliotheek statisch waren , zouden alle bibliotheek -code het worden toegevoegd aan het hoofdprogramma 's uitvoerbare code , en de reus programma zou moeten blijven in het geheugen voor de gehele looptijd . De Unix- of Linux -versie van een Windows DLL is een gezamenlijk object bibliotheek die is gebouwd met de extensie SO . Windows , Unix en Linux hebben specifieke conventies om functies in DLL of gedeelde bibliotheken. Instructies
Export Windows DLL Objecten behulp Preprocessor Trefwoord
1

je DLL header -bestand , zet het trefwoord " __declspec ( dllexport ) " vóór het prototype van een functie , klasse , klasse lid of gegevensvariabele in de DLL . Dit sleutelwoord voegt de functie prototype aan de DLL 's export tafel . Kopen van 2

Gebruik ordinale waarden 1 tot N in plaats van de functie of class namen van leden aan ruimte bezet door de DLL 's export tafel te besparen , waarbij N het aantal objecten of functies in de DLL .
3

Voeg het trefwoord " __declspec ( dllimport ) " voor de betreffende functie prototypes in het oproepende programma of DLL . De invoer programma aanroepen van de functies die de DLL export .
Export Windows DLL -functies Met behulp van een Module Definition File
4

Maak een tekstbestand met de extensie DEF en voeg deze toe . om het project voor uw DLL in Visual Studio
5

Voeg de " BIBLIOTHEEK " verklaring met de naam van de DLL nadat het als volgt :

BIBLIOTHEEK ReportWriter
< br > 6

Eventueel voeg een korte eenregelige beschrijving voor de DLL als volgt :

bESCHRIJVING genealogie Dit is een DLL voor het genereren van rapporten functionaliteit in MyProduct

Dit wordt aanbevolen
. .
7

Voeg een vermelding voor elke functie of klasse lid dat de DLL wil exporteren , met een optionele kardinaal getal . Het kardinale getal geeft de functie en waarden aanneemt van 1 tot N , waarbij N het aantal functies uitgevoerd door de DLL . Hier is een voorbeeld :

RPT_init
@ 1RPT_design @ 2RPT_run @ 3RPT_print @ 4

Na het koppelen van alle bron en dit DEF bestand , de compiler creëert een exportbestand met de EXP uitbreiding en een bibliotheek -bestand importeren met de LIB extensie . De compiler maakt gebruik van het EXP -bestand om de DLL te creëren . Het LIB bestand is gekoppeld aan het aanroepende programma en houdt import informatie over de functies in de DLL .

Previous: Next:
  C /C + + Programming
·Hoe de Soorten Input Validatio…
·Hoe om uw eigen Game Engine St…
·Hoe kan ik een XLS bestand met…
·Wat is een pointer in C ? 
·Hoe maak je een Header compile…
·Hoe je Command Line Parameters…
·Wat is een erfenis Conflict ? 
·Hoe maak je een Game Engine Bu…
·Hoe kan ik een CSV-bestand sch…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Hoe maak je Schakel een PHP Error Report…
·Ontwerp Stadia van GUI 
·Hoe kan ik een afbeelding Spiegel Vertic…
·Hoe maak je een CSV-bestand importeren o…
·Hoe te Dates invoegen Into MySQL tabelle…
·Hoe te converteren C + + ASCII naar UTF8…
·Eigenschappen van formulieren in Visual …
·Hoe kan ik een PHP File Test ? 
·Hoe je aanhalingstekens in VBS 
Copyright © Computer Kennis http://www.nldit.com