DLL failai yra dinamiškai susieti bibliotekos failai, parašyti ir valdomi naudojant C ++ programavimo kalbą. DLL supaprastina kodo bendrinimo ir saugojimo procesą. Šis „wikiHow“moko, kaip sukurti DLL failą naudojant „Visual Studio“, „Windows“programas arba „Visual Studio for Mac“. Programos diegimo metu būtinai pažymėkite parinktį „Darbastalio kūrimas naudojant C ++“. Jei jau turite „Visual Studio“programą, bet nepažymėjote šios parinkties langelio, turėsite dar kartą paleisti diegimo failą, kad įsitikintumėte, jog langelį galima pažymėti.
Žingsnis
Žingsnis 1. Atidarykite „Visual Studio“
Šią programą galite rasti meniu „Pradėti“arba aplanke „Programos“. Kadangi DLL failas yra informacinė biblioteka, tai yra projekto dalis ir paprastai reikalinga prieiga prie papildomos programos.
- „Visual Studio for Windows“galite atsisiųsti iš šios svetainės:
- „Visual Studio for Mac“galite atsisiųsti čia:
- Šioje „wikiHow“programoje „Microsoft“pateiktas kodas paaiškina, kaip sukurti DLL failą.
Žingsnis 2. Spustelėkite Failas
Šis skirtukas yra projekto srities viršuje („Windows“) arba ekrano viršuje („Mac“).
Žingsnis 3. Spustelėkite Naujas ir Projektai.
Bus rodomas dialogo langas „Sukurti naują projektą“.
Žingsnis 4. Nurodykite aspektų „Kalba“, „Platforma“ir „Projekto tipas“parinktis
Šie aspektai filtruos rodomus projekto šablonus.
Spustelėkite " Kalba “, Kad būtų rodomas išskleidžiamasis meniu, ir spustelėkite„ C ++ ”.
Žingsnis 5. Spustelėkite „Platformos “, Kad būtų rodomas išskleidžiamasis meniu, ir spustelėkite„ Langai “.
Žingsnis 6. Spustelėkite „Projekto tipas “, Kad būtų rodomas išskleidžiamasis meniu, ir pasirinkite„ Bibliotekos “.
Žingsnis 7. Spustelėkite Dynamic-link Library (DLL)
Parinktys bus pažymėtos mėlyna spalva. Spustelėkite " Kitas " tęsti.
Žingsnis 8. Įveskite projekto pavadinimą lauke „Pavadinimo langelis“
Pavyzdžiui, stulpelyje galite įvesti „MathLibrary“kaip pavadinimo pavyzdį.
Žingsnis 9. Spustelėkite Sukurti
Bus sukurtas DLL projektas.
Žingsnis 10. Pridėkite antraštės failą prie DLL projekto
Jį galite pridėti meniu juostoje „Projektas“spustelėję „Pridėti naują elementą“.
- Pasirinkite " Vaizdinis C ++ “Iš meniu kairėje dialogo lango pusėje.
- Pasirinkite " Failų antraštės (.h) “Iš dialogo lango vidurio.
- Į meniu parinkčių pavadinimo lauką įveskite pavadinimą, pvz., „MathLibrary.h“.
- Spustelėkite " Papildyti “, Kad sukurtumėte tuščią antraštės failą.
Žingsnis 11. Į tuščią antraštės failą įveskite šį kodą
// MathLibrary.h - Jame yra matematinių funkcijų deklaracijos #pragma vieną kartą #ifdef MATHLIBRARY_EXPORTS #define MATHLIBRARY_API _declspec (dllexport) #else #define MATHLIBRARY_API _declspec (dllimport) #nordifci) yra {n = 0, a // {n = 1, b // {n> 1, F (n-2) + F (n-1) // kai kurioms pradinėms integralo reikšmėms a ir b. // Jei seka inicijuojama F (0) = 1, F (1) = 1, // tada šis ryšys sukuria gerai žinomą Fibonačio seką: 1, 1, 2, 3, 5, 8, 13, 21, 34,… // Inicijuokite Fibonačio santykių seką // taip, kad F (0) = a, F (1) = b. // Ši funkcija turi būti iškviesta prieš bet kurią kitą funkciją. extern "C" MATHLIBRARY_API void fibonacci_init (const unsigned long long a, const unsigned long long b); // Sukurkite kitą sekos vertę. // Grąžina sėkmę ir atnaujina dabartinę vertę ir indeksą; // false dėl perpildymo, palieka dabartinę vertę ir indeksą nepakeistą. extern "C" MATHLIBRARY_API bool fibonacci_next (); // Gaukite dabartinę sekos vertę. extern "C" MATHLIBRARY_API nepasirašytas ilgas ilgas fibonacci_current (); // Gaukite dabartinės vertės padėtį sekoje. extern "C" MATHLIBRARY_API unsigned fibonacci_index ();
Žingsnis 12. Pridėkite CPP failą prie DLL projekto
Jį galite pridėti meniu juostoje „Projektas“spustelėję „Pridėti naują elementą“.
- Kairėje dialogo lango pusėje esančiame meniu pasirinkite „Visual C ++“.
- Dialogo lango centre pasirinkite „C ++ failas (.cpp)“.
- Į meniu parinkčių pavadinimo lauką įveskite pavadinimą „MathLibrary.cpp“.
- Spustelėkite „Pridėti“, kad sukurtumėte tuščią failą.
Žingsnis 13. Į tuščią failą įveskite šį kodą
// MathLibrary.cpp: apibrėžia DLL eksportuojamas funkcijas. #include "stdafx.h" // Visch Studio 2019 naudoti pch.h #include #include #include "MathLibrary.h" // DLL vidiniai būsenos kintamieji: static unsigned long long previous_; // Ankstesnė reikšmė, jei yra statinė nepasirašyta ilga ilga srovė_; // Dabartinė sekos reikšmė static unsigned index_; // Dabartinės sekos pozicija // Inicijuokite Fibonačio santykių seką // taip, kad F (0) = a, F (1) = b. // Ši funkcija turi būti iškviesta prieš bet kurią kitą funkciją. void fibonacci_init (const unsigned long long a, const unsigned long long b) {index_ = 0; dabartinis_ = a; ankstesnis_ = b; // žr. specialų atvejį, kai inicijuojama} // Sukurkite kitą sekos reikšmę. // Grąžina tiesą sėkmės atveju, klaidingą perpildymo atveju. bool fibonacci_next () {// patikrinkite, ar perpildytume rezultatą ar poziciją, jei ((ULLONG_MAX - ankstesnis_ <dabartinis_) || (UINT_MAX == indeksas_)) {return false; } // Ypatingas atvejis, kai indeksas == 0, tiesiog grąžinkite b reikšmę, jei (indeksas_> 0) {// kitaip, apskaičiuokite kitą sekos reikšmę ankstesnis_ += dabartinis_; } std:: swap (dabartinis_, ankstesnis_); ++ indeksas_; grįžti tiesa; } // Gaukite dabartinę sekos vertę. unsigned long long fibonacci_current () {return current_; } // Gaukite dabartinę indekso poziciją sekoje. unsigned fibonacci_index () {return index_; }
Žingsnis 14. Meniu juostoje spustelėkite Sukurti
Ši parinktis yra projekto srities viršuje („Windows“) arba ekrano viršuje („Mac“).
Žingsnis 15. Spustelėkite Sukurti sprendimą
Spustelėjus parinktį, galite pamatyti tokį tekstą:
1> ------ Kurimas pradėtas: Projektas: MathLibrary, Konfigūracija: Debug Win32 ------ 1> MathLibrary.cpp 1> dllmain.cpp 1> Kuriamas kodas… 1> Kuriama biblioteka C: / Users / username / Source / Repos / MathLibrary / Debug / MathLibrary.lib ir objektas C: / Users / username / Source / Repos / MathLibrary / Debug / MathLibrary.exp 1> MathLibrary.vcxproj -> C: / Users / username / Source / Repos / MathLibrary / Debug / MathLibrary.dll 1> MathLibrary.vcxproj -> C: / Users / username / Source / Repos / MathLibrary / Debug / MathLibrary.pdb (dalinis PBP) ========== Sukurta: 1 pavyko, 0 nepavyko, 0 naujausių, 0 praleista ==========