Els fitxers DLL són fitxers de biblioteca lligats dinàmicament escrits i controlats amb C ++. Les DLL fan que compartir, emmagatzemar i desar el vostre codi sigui senzill. Aquest wikiHow us mostrarà com crear un fitxer DLL amb Visual Studio, l'aplicació de Windows o Visual Studio per a Mac. Assegureu-vos que heu marcat "Desenvolupament d'escriptori amb C ++" quan instal·leu. Si ja teniu Visual Studio però no heu marcat aquesta casella, podeu tornar a executar l'instal·lador per assegurar-vos que ho feu.
Passos
Pas 1. Obriu Visual Studio
Ho podeu trobar al menú Inici o a la carpeta Aplicacions. Com que una DLL és una biblioteca d'informació, només és una peça del projecte i, normalment, requereix una aplicació d'acompanyament per accedir-hi.
- Podeu obtenir Visual Studio per a Windows aquí:
- Visual Studio per a Mac es pot descarregar aquí:
- Aquest wikiHow utilitzarà el codi proporcionat per Microsoft per explicar com es crea un fitxer DLL.
Pas 2. Feu clic al fitxer
Ho trobareu a sobre de l’espai del projecte (Windows) o a la part superior de la pantalla (Mac).
Pas 3. Feu clic a Nou i Projecte.
Apareixerà el quadre de diàleg "Crea un nou projecte".
Pas 4. Definiu les opcions d'idioma, plataforma i tipus de projecte
Aquests filtraran quins tipus de plantilles de projecte apareixen.
Feu clic a Llenguatge per obtenir un menú desplegable i fer clic a C ++.
Pas 5. Feu clic a Plataforma per obtenir un menú desplegable i fer clic a Windows.
Pas 6. Feu clic a Tipus de projecte per obtenir un menú desplegable i fer clic a Biblioteca.
Pas 7. Feu clic a Biblioteca d'enllaços dinàmics (DLL)
La vostra elecció es ressaltarà en blau. Feu clic a Pròxim per continuar.
Pas 8. Escriviu un nom al quadre Nom del projecte
Per exemple, escriviu "MathLibrary" al quadre per obtenir un nom de mostra.
Pas 9. Feu clic a Crea
Es crea el projecte DLL.
Pas 10. Afegiu un fitxer de capçalera a la DLL
Podeu fer-ho fent clic a "Afegeix un element nou" a "Projecte" a la barra de menú.
- Seleccioneu Visual C ++ des del menú esquerre del quadre de diàleg.
- Seleccioneu Fitxer de capçalera (.h) des del centre del quadre de diàleg.
- Escriviu el nom com a "MathLibrary.h" al camp del nom que hi ha a sota de les opcions del menú.
- Feu clic a Afegeix per generar el fitxer de capçalera en blanc.
Pas 11. Escriviu el codi següent al fitxer de capçalera en blanc
// MathLibrary.h - Conté declaracions de funcions matemàtiques #pragma una vegada #ifdef MATHLIBRARY_EXPORTS #define MATHLIBRARY_API _declspec (dllexport) #else #define MATHLIBRARY_API _declspec (dllimport) #endif // La relació de Fibonacci descriu n) és {n = 0, a // {n = 1, b // {n> 1, F (n-2) + F (n-1) // per a alguns valors integrals inicials a i b. // Si la seqüència s’inicialitza F (0) = 1, F (1) = 1, // aquesta relació produeix la coneguda Fibonacci // seqüència: 1, 1, 2, 3, 5, 8, 13, 21, 34, … // Inicialitzar una seqüència de relacions de Fibonacci // tal que F (0) = a, F (1) = b. // Aquesta funció s'ha de cridar abans que qualsevol altra funció. extern "C" MATHLIBRARY_API void fibonacci_init (const unsigned long long a, const unsigned long long b); // Produeix el següent valor de la seqüència. // Torna cert a l’èxit i actualitza el valor i l’índex actuals; // false en desbordament, deixa el valor actual i l’índex sense canvis. extern "C" MATHLIBRARY_API bool fibonacci_next (); // Obteniu el valor actual a la seqüència. extern "C" MATHLIBRARY_API sense signar llarg llarg fibonacci_current (); // Obteniu la posició del valor actual a la seqüència. extern "C" MATHLIBRARY_API sense signar fibonacci_index ();
Pas 12. Afegiu un fitxer CPP a la DLL
Per fer-ho, feu clic a Afegeix un element nou de "Projecte" a la barra de menú.
- Seleccioneu "Visual C ++" al menú esquerre del quadre de diàleg.
- Seleccioneu "Fitxer C ++ (.cpp)" al centre del quadre de diàleg.
- Escriviu el nom com a "MathLibrary.cpp" al camp del nom a sota de les opcions del menú.
- Feu clic a Afegeix per generar el fitxer en blanc.
Pas 13. Escriviu el següent codi al fitxer en blanc
// MathLibrary.cpp: defineix les funcions exportades per a la DLL. #include "stdafx.h" // utilitza pch.h a Visual Studio 2019 #include #include #include "MathLibrary.h" // Variables d'estat intern de la DLL: estàtic sense signar llarg llarg anterior_; // Valor anterior, si hi ha un corrent estàtic llarg sense signar llarg; // Valor de seqüència actual estàtic sense signar índex_; // Seqüència actual posició // Inicialitzar una seqüència de relacions de Fibonacci // tal que F (0) = a, F (1) = b. // Aquesta funció s'ha de cridar abans que qualsevol altra funció. void fibonacci_init (const unsigned long long a, const unsigned long long b) {index_ = 0; actual_ = a; anterior_ = b; // veure majúscules i minúscules quan s'inicialitza} // Produeix el següent valor de la seqüència. // Retorna cert en cas d'èxit, fals en desbordament. boolon fibonacci_next () {// comproveu si desbordaríem el resultat o la posició si ((ULLONG_MAX - anterior_ <actual_) || (UINT_MAX == índex_)) {return false; } // Cas especial quan índex == 0, només heu de retornar el valor b si (índex_> 0) {// en cas contrari, calculeu el següent valor de seqüència anterior_ + = actual_; } std:: swap (current_, previous_); ++ índex_; tornar cert; } // Obteniu el valor actual a la seqüència. unsigned long long fibonacci_current () {return current_; } // Obteniu la posició de l’índex actual a la seqüència. unsigned fibonacci_index () {return index_; }
Pas 14. Feu clic a Crea a la barra de menú
Ho trobareu a sobre de l’espai del projecte (Windows) o a la part superior de la pantalla (Mac).
Pas 15. Feu clic a Construeix la solució
Després de fer-hi clic, hauríeu de veure un text similar a aquest:
1> ------ Començament de la construcció: Projecte: MathLibrary, Configuració: Debug Win32 ------ 1> MathLibrary.cpp 1> dllmain.cpp 1> Generació de codi … 1> Creació de la biblioteca C: / Usuaris / nom d'usuari / Source / Repos / MathLibrary / Debug / MathLibrary.lib i objecte C: / Users / nom d'usuari / Source / Repos / MathLibrary / Debug / MathLibrary.exp 1> MathLibrary.vcxproj -> C: / Users / nom d'usuari / Source / Repos / MathLibrary / Debug / MathLibrary.dll 1> MathLibrary.vcxproj -> C: / Users / nom d'usuari / Source / Repos / MathLibrary / Debug / MathLibrary.pdb (PDB parcial) ========== Build: 1 correcte, 0 fallides, 0 actualitzades, 0 omeses ==========