Content
Els fitxers DLL són fitxers de biblioteca enllaçats dinàmicament escrits i controlats amb C ++. Les DLL faciliten compartir, emmagatzemar i conservar el vostre codi. Aquest wikiHow us ensenya a crear un fitxer DLL mitjançant Visual Studio al Windows o Visual Studio al 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 executar l'instal·lador de nou per assegurar-vos que el teniu.
Per trepitjar
- Obriu Visual Studio. Podeu trobar aquest programa al menú Inici o a la carpeta Aplicacions. Com que una DLL és una biblioteca d’informació, només forma part d’un projecte i, normalment, requereix una aplicació complementària per accedir-hi.
- Podeu descarregar Visual Studio per a Windows aquí: https://docs.microsoft.com/en-us/visualstudio/install/install-visual-studio?view=vs-2019
- Podeu descarregar Visual Studio per a Mac aquí: https://docs.microsoft.com/en-us/visualstudio/mac/installation?view=vsmac-2019
- Aquest wikiHow utilitza el codi proporcionat per Microsoft per explicar com crear un fitxer DLL.
- Feu clic a Fitxer. Podeu trobar-lo a sobre de la sala del projecte (Windows) o a la part superior de la pantalla (Mac).
- fer clic a Novetat i Projecte. Apareix el quadre de diàleg "Crea un projecte nou".
- Suggeriu les opcions Llenguatge, Plataforma i Tipus de projecte dins. Aquests filtraran quins tipus de plantilles de projecte apareixen.
- fer clic a Llenguatge per obtenir un menú desplegable i fer clic a C ++.
- fer clic a Plataforma per obtenir un menú desplegable i fer clic a Windows.
- fer clic a Tipus de projecte per obtenir un menú desplegable i fer clic a Biblioteca.
- fer clic a Biblioteca d'enllaços dinàmics (DLL). La vostra elecció es tornarà blava. fer clic a Següent continuar.
- Escriviu un nom per al projecte al quadre Nom. Per exemple, escriviu "MathLibrary" al quadre de nom de la mostra.
- fer clic a Fer. Es crea el projecte DLL.
- Afegiu un fitxer de capçalera a la DLL. Podeu fer-ho fent clic a Afegeix un element nou baix Projecte a la barra de menú.
- Seleccioneu Visual C ++ al menú esquerre del quadre de diàleg.
- Seleccioneu Fitxer de capçalera (.h) al centre del quadre de diàleg.
- Escriviu el nom com a "MathLibrary.h" al camp del nom a sota de les opcions del menú.
- fer clic a Afegeix per generar el fitxer de capçalera buit.
- Escriviu el codi següent al fitxer de capçalera buit.
- Aquest és un codi de mostra del lloc web d’ajuda de Microsoft.
// MathLibrary. (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ó retorna el conegut Fibonacci // fila: 1, 1, 2, 3, 5, 8, 13, 21, 34, ... // Inicialitzar una cadena de relacions de Fibonacci // tal que F (0) = a, F (1) = b. // Aquesta funció s'ha de cridar abans que qualsevol altra funció. "C" extern MATHLIBRARY_API void fibonacci_init (const unsigned long long a, const unsigned long long b); // Retorna el següent valor de la fila. // Torna True en cas d’èxit i actualitza el valor i l’índex actuals; // Fals en desbordament, deixeu el valor actual i l'índex sense canvis. "C" extern MATHLIBRARY_API bole fibonacci_next (); // Obteniu el valor actual a la fila. "C" extern MATHLIBRARY_API sense signar llarg llarg fibonacci_current (); // Obteniu la posició del valor actual a la fila. extern "C" MATHLIBRARY_API sense signar fibonacci_index ();
- Afegiu un fitxer CPP a la DLL. Podeu fer-ho fent clic a Afegeix un element nou baix 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ú.
- fer clic a Afegeix per generar el fitxer buit.
- Escriviu el següent codi al fitxer en blanc.
- Aquest és un codi de mostra del lloc web d’ajuda de Microsoft.
// MathLibrary.cpp: defineix les funcions exportades per a la DLL. #include "stdafx.h" // use pch.h in Visual Studio 2019 #include utility> #include limits.h> #include "MathLibrary.h" // Variables d'estat intern de la DLL: estàtica sense signar molt de temps anterior_; // Valor anterior, si està present estàtic sense signar llarg llarg corrent_; // Valor de cadena actual índex estàtic sense signar_; // seq actual. posició // Inicialitzeu 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 () {// comprova si hi ha desbordament de resultat o posició si ((ULLONG_MAX - anterior_ actual_) || (UINT_MAX == index_)) {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 cadena. unsigned long long fibonacci_current () {return current_; } // Obteniu la posició d'índex actual a la fila. unsigned fibonacci_index () {return index_; }
- fer clic a Compila a la barra de menú. Podeu trobar aquest botó a sobre del camp del projecte (Windows) o a la part superior de la pantalla (Mac).
- fer clic a Compila la solució. Després de fer-hi clic, hauríeu de veure el text següent:
- Si heu aconseguit crear la vostra DLL, la veureu aquí. Si s'ha produït un error, apareixerà aquí perquè pugueu solucionar-lo.
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: Users nom d'usuari Font 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) ========== Construeix: 1 correctament, 0 fallides, 0 actualitzades, 0 omeses ==========