วิธีสร้างไลบรารี่ Dll

สารบัญ:

วิธีสร้างไลบรารี่ Dll
วิธีสร้างไลบรารี่ Dll

วีดีโอ: วิธีสร้างไลบรารี่ Dll

วีดีโอ: วิธีสร้างไลบรารี่ Dll
วีดีโอ: How-To Create And Use A DLL (Dynamic Link Library) with C+ MSVC Visual Studio 2019 Walkthrough 2024, พฤศจิกายน
Anonim

DLL คือโค้ดที่เก็บไว้ในไฟล์ที่มีนามสกุล.dll แอปพลิเคชันอื่นสามารถใช้โค้ดบางส่วนได้ แต่ไลบรารีไม่ใช่แอปพลิเคชันเอง โดยพื้นฐานแล้ว ไลบรารีที่เชื่อมโยงแบบไดนามิกคือชุดของฟังก์ชันที่คอมไพล์ อย่างไรก็ตาม ไลบรารีดังกล่าวมีลักษณะเฉพาะหลายประการ - ตัวอย่างเช่น หากแอปพลิเคชันบางตัวถูกเรียกใช้งานพร้อมกันในระบบ และใช้ฟังก์ชันที่อยู่ใน DLL เดียวกัน จะมีเพียงหนึ่งไลบรารีเท่านั้นที่จะอยู่ในหน่วยความจำอย่างถาวร - วิธีนี้ช่วยให้ใช้งานได้อย่างประหยัด หน่วยความจำ.

วิธีสร้างไลบรารี dlldll
วิธีสร้างไลบรารี dlldll

จำเป็น

คอมไพเลอร์

คำแนะนำ

ขั้นตอนที่ 1

สร้างโครงการใหม่ในคอมไพเลอร์โดยเลือกรายการเมนู "ไฟล์", "ใหม่", "Library dll" ตามลำดับ โครงการจะถูกสร้างขึ้นด้วยเนื้อหาต่อไปนี้: "intWINAPI_Dll_Entry_Point (HINSTANCE_hinst_unsignedlong {return 1;}"

ขั้นตอนที่ 2

นอกจากนี้ จะมีคำเตือนความคิดเห็นที่ยืดเยื้อว่าเพื่อให้ไลบรารีทำงานได้ จะต้องระบุ.dll จำนวนหนึ่ง โดยมีเงื่อนไขว่าอินสแตนซ์ของคลาส String จะถูกใช้งาน ในการนำเข้าและส่งออกจาก DLL คุณต้องใช้ตัวแก้ไข _import และ _export ตามลำดับ นอกจากนี้ ขึ้นอยู่กับรุ่นของคอมไพเลอร์ อนุญาตให้ใช้คำหลักใหม่ _delspec () กับพารามิเตอร์ dllimport และ dllexport ตามลำดับ

ขั้นตอนที่ 3

ในการส่งออกฟังก์ชันจากไลบรารี คุณจะต้องมีไฟล์ส่วนหัวที่มีคำอธิบาย _delspec (dllexport) สำหรับฟังก์ชันที่ส่งออก ในการนำเข้าฟังก์ชันไปยังแอปพลิเคชัน ผู้ใช้จะต้องติดตั้งไฟล์ส่วนหัวที่คล้ายกัน แต่มี _delspec (dllimport) คำอธิบายซึ่งอาจทำให้เกิดความไม่สะดวก ปัญหานี้สามารถแก้ไขได้ง่าย: เพิ่มสิ่งต่อไปนี้ในไฟล์ส่วนหัวของไลบรารี: “#ifdefined (BUILDDLL); # defineDLL_EXP_declspec (dllexport); # else; #ifdefined (BUILDAPP); # defineDLL_EXP_declspec (dllimport); # else; #defineDLL_EXP; #เอนดิฟเอนดิฟ.

ขั้นตอนที่ 4

รวบรวมโครงการ หากคุณกด "เรียกใช้" หลังจากสร้างเสร็จแล้ว คอมไพเลอร์จะแสดงข้อความเกี่ยวกับความเป็นไปไม่ได้ในการรันโปรแกรม ตอนนี้ควรเขียนแอปพลิเคชันการโทร ในไดเรกทอรีเดียวกัน สร้างโครงการใหม่ (ไฟล์ / NewApplication) วางปุ่มในแบบฟอร์มและสร้างตัวจัดการ OnClick

ขั้นตอนที่ 5

หลังจากนั้น เหลือเพียงเปิดโครงการและเพิ่มไฟล์.lib จากโครงการก่อนหน้าด้วย DLL (คลิกขวา "เพิ่มรายการ") แล้วเริ่มโครงการ

แนะนำ: