DLL файлууд нь C ++ програмчлалын хэлээр бичигдсэн, хянадаг динамик холбоос бүхий номын сангийн файлууд юм. DLL нь код хуваалцах, хадгалах үйл явцыг хялбаршуулдаг. Энэхүү wikiHow нь Visual Studio, Windows програмууд эсвэл Mac -д зориулсан Visual Studio ашиглан DLL файлыг хэрхэн үүсгэхийг танд заадаг. Програмыг суулгах явцад "C ++ ашиглан ширээний хөгжүүлэлт" сонголтыг шалгаарай. Хэрэв танд Visual Studio програм байгаа боловч энэ сонголтыг шалгахгүй бол хайрцгийг шалгах боломжтой эсэхийг шалгахын тулд суулгах файлыг дахин ажиллуулах шаардлагатай болно.
Алхам
Алхам 1. Visual Studio -ийг нээнэ үү
Та энэ програмыг "Эхлүүлэх" цэс эсвэл "Програм" хавтаснаас олж болно. DLL файл нь мэдээллийн сан учраас энэ нь төслийн "хэсэг" бөгөөд ихэвчлэн хамтрагч програмд хандахыг шаарддаг.
- Та Windows-д зориулсан Visual Studio-г энэ сайтаас татаж авах боломжтой:
- Mac-д зориулсан Visual Studio програмыг эндээс татаж авах боломжтой:
- Энэхүү wikiHow нь DLL файлыг хэрхэн үүсгэхийг тайлбарлахын тулд Майкрософтоос өгсөн кодыг ашигладаг.
Алхам 2. Файл дээр дарна уу
Энэ таб нь төслийн талбайн дээд хэсэгт (Windows) эсвэл дэлгэцийн дээд хэсэгт (Mac) байрладаг.
Алхам 3. Шинэ дээр дарна уу ба Төслүүд.
"Шинэ төсөл үүсгэх" харилцах цонх гарч ирнэ.
Алхам 4. "Хэл", "Платформ", "Төслийн төрөл" талуудын сонголтуудыг тодорхойл
Эдгээр талууд нь гарч буй төслийн загварыг шүүх болно.
Дарна уу " Хэл "Доош унах цэсийг харуулахын тулд" дарна уу. C ++ ”.
Алхам 5. "Платформууд "Доош унах цэсийг харуулахын тулд" дарна уу. Windows ".
Алхам 6. "Төслийн төрөл "Доош унах цэсийг харуулахын тулд" дарна уу. Номын сан ".
Алхам 7. Dynamic-link Library (DLL) дээр дарна уу
Сонголтуудыг цэнхэр өнгөөр тэмдэглэнэ. Дарна уу " Дараачийн " үргэлжлүүлэх.
Алхам 8. "Нэрийн хайрцаг" талбарт төслийн нэрийг бичнэ үү
Жишээлбэл, та жишээ нэр болгон баганад "MathLibrary" гэж бичиж болно.
Алхам 9. Create дарна уу
DLL төсөл бий болно.
Алхам 10. DLL төсөлд толгой файл нэмэх
Та үүнийг цэсний мөрөн дээрх "Төсөл" дээрээс "Шинэ зүйл нэмэх" дээр дарж нэмж болно.
- Сонгох " Visual C ++ "Харилцах цонхны зүүн талд байгаа цэснээс.
- Сонгох " Файлын толгой (.h) "Харилцах цонхны дундаас.
- Цэсийн сонголтуудын доорх нэрийн талбарт "MathLibrary.h" нэрийг оруулна уу.
- Дарна уу " Нэмэх "Хоосон толгой файл үүсгэх.
Алхам 11. Дараах кодыг хоосон толгой файл руу оруулна уу
// MathLibrary.h - Математикийн функцуудын мэдэгдлийг агуулдаг #прагма нэг удаа #ifdef MATHLIBRARY_EXPORTS #define MATHLIBRARY_API _declspec (dllexport) #else #define MATHLIBRARY_API _declspec (diflion a)) нь a ба b гэсэн анхны интеграл утгуудын хувьд {n = 0, a // {n = 1, b // {n> 1, F (n-2) + F (n-1) // юм. // Хэрэв дарааллыг эхлүүлсэн бол F (0) = 1, F (1) = 1, // дараа нь энэ харьцаа нь бидний сайн мэдэх Фибоначчийн // дарааллыг үүсгэдэг: 1, 1, 2, 3, 5, 8, 13, 21, 34,… // Фибоначчийн харилцааны дарааллыг эхлүүлнэ үү // ийм байдлаар F (0) = a, F (1) = b болно. // Энэ функцийг бусад функцээс өмнө дуудах ёстой. extern "C" MATHLIBRARY_API хүчингүй fibonacci_init (const тэмдэггүй урт урт a, const тэмдэггүй урт урт b); // Дараагийн утгыг дарааллаар гаргана. // Амжилтанд үнэнийг буцааж, одоогийн утга, индексийг шинэчилдэг; // халих үед худал, одоогийн утга болон индексийг хэвээр үлдээнэ. extern "C" MATHLIBRARY_API bool fibonacci_next (); // Одоогийн утгыг дарааллаар нь аваарай. extern "C" MATHLIBRARY_API тэмдэггүй урт урт fibonacci_current (); // Одоогийн утгын дарааллыг дарааллаар нь аваарай. extern "C" MATHLIBRARY_API гарын үсэг зураагүй fibonacci_index ();
Алхам 12. CPP файлыг DLL төсөлд нэмнэ үү
Та үүнийг цэсний мөрөн дээрх "Төсөл" дээрээс "Шинэ зүйл нэмэх" дээр дарж нэмж болно.
- Харилцах цонхны зүүн талд байгаа цэснээс "Visual C ++" -ийг сонгоно уу.
- Харилцах цонхны төвөөс "C ++ File (.cpp)" -ийг сонгоно уу.
- Цэсийн сонголтуудын доорх нэрийн талбарт "MathLibrary.cpp" нэрийг оруулна уу.
- Хоосон файл үүсгэхийн тулд "Нэмэх" дээр дарна уу.
Алхам 13. Дараах кодыг хоосон файлд бичнэ үү
// MathLibrary.cpp: DLL -ийн экспортолсон функцуудыг тодорхойлдог. #include "stdafx.h" // Visual Studio 2019 -д pch.h ашиглах #include #include #include "MathLibrary.h" // DLL дотоод төлөвийн хувьсагчид: static unsigned long long previous_; // Өмнөх утга, хэрэв ямар нэгэн статик гарын үсэг зураагүй урт урт гүйдэл_; // Одоогийн дарааллын утга статик тэмдэггүй индекс_; // Одоогийн дараалал. байрлал // Фибоначчийн харилцааны дарааллыг эхлүүлэх // ийм байдлаар F (0) = a, F (1) = b болно. // Энэ функцийг бусад функцээс өмнө дуудах ёстой. void fibonacci_init (const unsigned long long a, const unsigned long long b) {index_ = 0; одоогийн_ = a; өмнөх_ = b; // эхлүүлэх үед онцгой тохиолдлыг үзнэ үү} // Дараагийн утгыг дарааллаар гаргана. // Амжилтанд үнэн, халихад худал гэж буцаана. bool fibonacci_next () {// хэрэв бид ((ULLONG_MAX - өмнөх_ <одоогийн_) || (UINT_MAX == индекс_)) {буцах бол үр дүн эсвэл байрлалыг дүүргэх эсэхийг шалгах. } // Индекс == 0 байх онцгой тохиолдол, хэрэв (индекс_> 0) {b өөр тохиолдолд b утгыг буцаана уу { / өөрөөр хэлбэл өмнөх дарааллын өмнөх утгыг тооцоолно өмнөх_ += одоогийн_; } std:: swap (одоогийн_, өмнөх_); ++ индекс_; үнэн рүү буцах; } // Одоогийн утгыг дарааллаар нь аваарай. гарын үсэг зураагүй урт урт fibonacci_current () {return current_; } // Одоогийн индексийн байрлалыг дарааллаар нь аваарай. гарын үсэг зураагүй fibonacci_index () {буцах индекс_; }
Алхам 14. Цэсийн мөрөнд Build дарна уу
Энэ сонголт нь төслийн талбайн дээд хэсэгт (Windows) эсвэл дэлгэцийн дээд хэсэгт (Mac) байрладаг.
Алхам 15. Build Solution дээр дарна уу
Сонголтыг дарсны дараа та дараах текстийг харах болно.
1> ------ Бүтээл эхэллээ: Төсөл: MathLibrary, Тохиргоо: Win32 дебаг хийх ------ 1> MathLibrary.cpp 1> dllmain.cpp 1> Код үүсгэх … 1> Номын сан үүсгэх C: / Хэрэглэгчид / хэрэглэгчийн нэр / Source / Repos / MathLibrary / Debug / MathLibrary.lib ба объект C: / Users / username / Source / Repos / MathLibrary / Debug / MathLibrary.exp 1> MathLibrary.vcxproj -> C: / Users / хэрэглэгчийн нэр / Source / Repos / MathLibrary / Debug / MathLibrary.dll 1> MathLibrary.vcxproj -> C: / Users / хэрэглэгчийн нэр / Source / Repos / MathLibrary / Debug / MathLibrary.pdb (Хэсэгчилсэн PDB) ========= Барилга: 1 амжилттай боллоо., 0 амжилтгүй, 0 шинэчлэгдсэн, 0 алгассан ==========