Jak utworzyć plik DLL: 10 kroków (ze zdjęciami)

Spisu treści:

Jak utworzyć plik DLL: 10 kroków (ze zdjęciami)
Jak utworzyć plik DLL: 10 kroków (ze zdjęciami)

Wideo: Jak utworzyć plik DLL: 10 kroków (ze zdjęciami)

Wideo: Jak utworzyć plik DLL: 10 kroków (ze zdjęciami)
Wideo: Chemia - klasa 7 - Powtórzenie wiadomości z działu Gazy i tlenki 2024, Listopad
Anonim

Pliki DLL są dynamicznie dołączanymi plikami bibliotek pisanymi i kontrolowanymi za pomocą języka programowania C++. Biblioteki DLL upraszczają proces udostępniania i przechowywania kodu. Ta wikiHow uczy, jak utworzyć plik DLL za pomocą programu Visual Studio, aplikacji Windows lub Visual Studio dla komputerów Mac. Upewnij się, że zaznaczyłeś opcję „Desktop Development with C++” w procesie instalacji programu. Jeśli masz już program Visual Studio, ale nie zaznaczasz pola dla tej opcji, musisz ponownie uruchomić plik instalacyjny, aby upewnić się, że pole można zaznaczyć.

Krok

11227960 1
11227960 1

Krok 1. Otwórz program Visual Studio

Możesz znaleźć ten program w menu "Start" lub w folderze "Aplikacje". Ponieważ plik DLL jest biblioteką informacji, jest „fragmentem” projektu i zwykle wymaga dostępu do aplikacji towarzyszącej.

  • Program Visual Studio dla systemu Windows można pobrać z tej witryny:
  • Visual Studio dla komputerów Mac można pobrać tutaj:
  • Ten wikiHow wykorzystuje kod dostarczony przez firmę Microsoft, aby wyjaśnić, jak utworzyć plik DLL.
11227960 2
11227960 2

Krok 2. Kliknij Plik

Ta zakładka znajduje się na górze obszaru projektu (Windows) lub na górze ekranu (Mac).

11227960 3
11227960 3

Krok 3. Kliknij Nowy oraz Projektowanie.

Wyświetlone zostanie okno dialogowe „Utwórz nowy projekt”.

11227960 4
11227960 4

Krok 4. Określ opcje dla aspektów „Język”, „Platforma” i „Typ projektu”

Te aspekty będą filtrować wyświetlane szablony projektów.

Kliknij " Język ”, aby wyświetlić rozwijane menu i kliknij „ C++ ”.

11227960 5
11227960 5

Krok 5. Kliknij „Platformy ”, aby wyświetlić rozwijane menu i kliknij „ Okna”.

11227960 6
11227960 6

Krok 6. Kliknij „Typ projektu ”, aby wyświetlić rozwijane menu i wybierz „ Biblioteki.

11227960 7
11227960 7

Krok 7. Kliknij Biblioteka z dynamicznym łączem (DLL)

Opcje zostaną zaznaczone na niebiesko. Kliknij " Następny " kontynuować.

11227960 8
11227960 8

Krok 8. Wpisz nazwę projektu w polu „Name Box”

Na przykład możesz wpisać „MathLibrary” w kolumnie jako przykładową nazwę.

11227960 9
11227960 9

Krok 9. Kliknij Utwórz

Zostanie utworzony projekt DLL.

11227960 10
11227960 10

Krok 10. Dodaj plik nagłówkowy do projektu DLL

Możesz go dodać, klikając „ Dodaj nowy element” z „ Projekt” na pasku menu.

  • Wybierać " Wizualizacja C++ ” z menu po lewej stronie okna dialogowego.
  • Wybierać " Nagłówki plików (.h) ” ze środka okna dialogowego.
  • Wpisz nazwę, na przykład „MathLibrary.h” w polu nazwy pod opcjami menu.
  • Kliknij " Dodać ”, aby utworzyć pusty plik nagłówkowy.
11227960 11
11227960 11

Krok 11. Wpisz następujący kod do pustego pliku nagłówkowego

    // MathLibrary.h - Zawiera deklaracje funkcji matematycznych #pragma Once #ifdef MATHLIBRARY_EXPORTS #define MATHLIBRARY_API _declspec(dllexport) #else #define MATHLIBRARY_API _declspec(dllimport) #endif // Relacja rekurencyjna Fibonacciego F opisuje sekwencję F // gdzie) to { n = 0, a // { n = 1, b // { n > 1, F(n-2) + F(n-1) // dla niektórych początkowych wartości całkowitych a i b. // Jeśli sekwencja jest inicjowana F(0) = 1, F(1) = 1, // wtedy ta relacja daje dobrze znaną // sekwencję Fibonacciego: 1, 1, 2, 3, 5, 8, 13, 21, 34, … // Zainicjuj sekwencję relacji Fibonacciego // taką, że F(0) = a, F(1) = b. // Ta funkcja musi zostać wywołana przed każdą inną funkcją. extern "C" MATHLIBRARY_API void fibonacci_init(const unsigned long long a, const unsigned long long b); // Utwórz następną wartość w sekwencji. // Zwraca prawdę w przypadku powodzenia i aktualizuje bieżącą wartość i indeks; // false przy przepełnieniu, pozostawia obecną wartość i indeks bez zmian. zewnętrzne "C" MATHLIBRARY_API bool fibonacci_next(); // Pobierz bieżącą wartość w sekwencji. extern "C" MATHLIBRARY_API unsigned long long fibonacci_current(); // Pobierz pozycję bieżącej wartości w sekwencji. zewnętrzne "C" MATHLIBRARY_API unsigned fibonacci_index();

  • Powyższy kod to przykładowy kod pobrany z witryny usług pomocy firmy Microsoft.
11227960 12
11227960 12

Krok 12. Dodaj plik CPP do projektu DLL

Możesz go dodać, klikając „ Dodaj nowy element” z „ Projekt” na pasku menu.

  • Wybierz "Visual C++" z menu po lewej stronie okna dialogowego.
  • Wybierz "Plik C++ (.cpp) " ze środka okna dialogowego.
  • Wpisz nazwę „MathLibrary.cpp” w polu nazwy pod opcjami menu.
  • Kliknij „Dodaj”, aby utworzyć pusty plik.
11227960 13
11227960 13

Krok 13. Wpisz następujący kod do pustego pliku

    // MathLibrary.cpp: Definiuje eksportowane funkcje dla biblioteki DLL. #include "stdafx.h" // użyj pch.h w Visual Studio 2019 #include #include #include "MathLibrary.h" // Wewnętrzne zmienne stanu DLL: static unsigned long long previous_; // Poprzednia wartość, jeśli jakakolwiek static unsigned long long current_; // Bieżąca wartość sekwencji static unsigned index_; // Bieżąca sekw. pozycja // Zainicjuj sekwencję relacji Fibonacciego // taką, że F(0) = a, F(1) = b. // Ta funkcja musi zostać wywołana przed każdą inną funkcją. void fibonacci_init(const unsigned long long a, const unsigned long long b) { index_ = 0; obecny_ = a; poprzedni_ = b; // zobacz przypadek specjalny podczas inicjalizacji } // Wygeneruj następną wartość w sekwencji. // Zwraca prawdę w przypadku sukcesu, fałsz w przypadku przepełnienia. bool fibonacci_next() { // sprawdź, czy nie przepełniliśmy wyniku lub pozycji if ((ULLONG_MAX - poprzedni_ < bieżący_) || (UINT_MAX == index_)) { return false; } // Specjalny przypadek, gdy indeks == 0, po prostu zwróć wartość b if (indeks_ > 0) { // w przeciwnym razie oblicz następną wartość sekwencji poprzednia_ += bieżąca_; } std::swap(bieżący_, poprzedni_); ++indeks_; zwróć prawdę; } // Pobierz bieżącą wartość w sekwencji. unsigned long long fibonacci_current() { return current_; } // Pobierz bieżącą pozycję indeksu w sekwencji. unsigned fibonacci_index() { return index_; }

  • Powyższy kod to przykładowy kod pobrany z witryny usług pomocy firmy Microsoft.
11227960 14
11227960 14

Krok 14. Kliknij Kompiluj na pasku menu

Ta opcja znajduje się na górze obszaru projektu (Windows) lub na górze ekranu (Mac).

11227960 15
11227960 15

Krok 15. Kliknij opcję Kompiluj rozwiązanie

Po kliknięciu opcji możesz zobaczyć następujący tekst:

    1>------ Rozpoczęto kompilację: Projekt: MathLibrary, Konfiguracja: Debug Win32 ------ 1>MathLibrary.cpp 1>dllmain.cpp 1>Generowanie kodu… 1> Tworzenie biblioteki C:\Users\username \Source\Repos\MathLibrary\Debug\MathLibrary.lib i obiekt 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 (częściowy plik PDB) ========== Kompilacja: 1 powiodła się, 0 nie powiodło się, 0 aktualne, 0 pominięte ==========

  • Jeśli Twoje tworzenie lub projekt DLL zakończył się sukcesem, możesz to zobaczyć na tej stronie. Jeśli w projekcie wystąpi błąd, zostanie wyświetlony błąd, abyś mógł go naprawić.

Zalecana: