DLL-filer är dynamiskt länkade biblioteksfiler skrivna och kontrollerade med C ++. DLL -filer gör det enkelt att dela, lagra och spara din kod. Denna wikiHow visar dig hur du skapar en DLL -fil med Visual Studio, Windows -programmet eller Visual Studio för Mac. Se till att du har "Desktop Development with C ++" markerat när du installerar. Om du redan har Visual Studio men inte markerade den rutan kan du köra installationsprogrammet igen för att se till att du gör det.
Steg
Steg 1. Öppna Visual Studio
Du hittar detta i din Start -meny eller i mappen Program. Eftersom en DLL är ett bibliotek med information är det bara en del av ett projekt och kräver vanligtvis en medföljande app för att komma åt den.
- Du kan hämta Visual Studio för Windows här:
- Visual Studio för Mac kan laddas ner här:
- Denna wikiHow kommer att använda kod från Microsoft för att förklara hur man bygger en DLL -fil.
Steg 2. Klicka på filen
Du hittar det antingen ovanför projektutrymmet (Windows) eller längst upp på skärmen (Mac).
Steg 3. Klicka på Ny och Projekt.
Dialogrutan "Skapa ett nytt projekt" dyker upp.
Steg 4. Ange alternativen för språk, plattform och projekttyp
Dessa filtrerar vilka typer av projektmallar som visas.
Klick Språk för att få en rullgardinsmeny och klicka C ++.
Steg 5. Klicka på Plattform för att få en rullgardinsmeny och klicka Windows.
Steg 6. Klicka på Projekttyp för att få en rullgardinsmeny och klicka Bibliotek.
Steg 7. Klicka på Dynamic-link Library (DLL)
Ditt val markerar blått. Klick Nästa att fortsätta.
Steg 8. Skriv ett namn i namnrutan för projektet
Skriv till exempel "MathLibrary" i rutan för ett exempelnamn.
Steg 9. Klicka på Skapa
DLL -projektet skapas.
Steg 10. Lägg till en rubrikfil till DLL: en
Du kan göra detta genom att klicka på "Lägg till nytt objekt" från "Projekt" i menyraden.
- Välj Visual C ++ från den vänstra menyn i dialogrutan.
- Välj Rubrikfil (.h) från mitten av dialogrutan.
- Skriv namnet som “MathLibrary.h” i namnfältet under menyalternativen.
- Klick Lägg till för att generera den tomma rubrikfilen.
Steg 11. Skriv följande kod i den tomma rubrikfilen
// MathLibrary.h - Innehåller deklarationer av matematiska funktioner #pragma en gång #ifdef MATHLIBRARY_EXPORTS #define MATHLIBRARY_API _declspec (dllexport) #else #define MATHLIBRARY_API _declspec (dllimport) #förändring F n) är {n = 0, a // {n = 1, b // {n> 1, F (n-2) + F (n-1) // för några initiala integralvärden a och b. // Om sekvensen initialiseras F (0) = 1, F (1) = 1, // så ger denna relation den välkända Fibonacci // sekvensen: 1, 1, 2, 3, 5, 8, 13, 21, 34,… // Initiera en Fibonacci -förhållandesekvens // så att F (0) = a, F (1) = b. // Denna funktion måste anropas före någon annan funktion. extern "C" MATHLIBRARY_API ogiltig_init (const osignerad lång lång a, konst osignerad lång lång b); // Producera nästa värde i sekvensen. // Returnerar true på framgång och uppdaterar aktuellt värde och index; // falskt vid överflöd, lämnar aktuellt värde och index oförändrat. extern "C" MATHLIBRARY_API bool retracement_next (); // Få det aktuella värdet i sekvensen. extern "C" MATHLIBRARY_API osignerad lång lång Fibonacci_current (); // Få positionen för det aktuella värdet i sekvensen. extern "C" MATHLIBRARY_API osignerad Fibonacci_index ();
Steg 12. Lägg till en CPP -fil i DLL: en
Du kan göra detta genom att klicka på Lägg till nytt objekt från "Projekt" i menyraden.
- Välj "Visual C ++" från den vänstra menyn i dialogrutan.
- Välj "C ++ -fil (.cpp)" i mitten av dialogrutan.
- Skriv namnet som “MathLibrary.cpp” i namnfältet under menyalternativen.
- Klicka på Lägg till för att skapa den tomma filen.
Steg 13. Skriv följande kod i den tomma filen
// MathLibrary.cpp: Definierar de exporterade funktionerna för DLL: en. #include "stdafx.h" // use pch.h in Visual Studio 2019 #include #include #include "MathLibrary.h" // DLL internal state variables: static unsigned long long previous_; // Tidigare värde, om någon statisk osignerad lång lång ström_; // Aktuellt sekvensvärde statiskt osignerat index_; // Nuvarande sek. position // Initiera en Fibonacci -relationssekvens // så att F (0) = a, F (1) = b. // Denna funktion måste anropas före någon annan funktion. void retracement_init (const unsigned long long a, const unsigned long long b) {index_ = 0; aktuell_ = a; föregående_ = b; // se specialfall vid initialisering} // Producera nästa värde i sekvensen. // Returnerar sant vid framgång, falskt vid överflöd. bool retracement_next () {// kolla om vi skulle överflöda resultat eller position om ((ULLONG_MAX - föregående_ <aktuell_) || (UINT_MAX == index_)) {return false; } // Specialfall när index == 0, returnera bara b -värde om (index_> 0) {// annars, beräkna nästa sekvensvärde föregående_ += nuvarande_; } std:: swap (aktuell_, föregående_); ++ index_; återvända sant; } // Få det aktuella värdet i sekvensen. osignerad lång lång Fibonacci_current () {return current_; } // Få den aktuella indexpositionen i sekvensen. osignerad retracement_index () {return index_; }
Steg 14. Klicka på Bygg i menyraden
Du hittar det antingen ovanför projektutrymmet (Windows) eller längst upp på skärmen (Mac).
Steg 15. Klicka på Bygg lösning
När du har klickat på det borde du se text som liknar detta:
1> ------ Byggstart: Projekt: MathLibrary, Konfiguration: Debug Win32 ------ 1> MathLibrary.cpp 1> dllmain.cpp 1> Generera kod … 1> Skapa bibliotek C: / Users / användarnamn / Source / Repos / MathLibrary / Debug / MathLibrary.lib och objekt C: / Users / användarnamn / Source / Repos / MathLibrary / Debug / MathLibrary.exp 1> MathLibrary.vcxproj -> C: / Users / användarnamn / Source / Repos / MathLibrary / Debug / MathLibrary.dll 1> MathLibrary.vcxproj -> C: / Users / användarnamn / Source / Repos / MathLibrary / Debug / MathLibrary.pdb (delvis PDB) ========== Bygg: 1 lyckades, 0 misslyckades, 0 uppdaterade, 0 hoppade över ===========