Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

ความแตกต่างระหว่าง EXE และ DLL และวิธีการสร้างขึ้นมา

DLL - Dynamic Link Library (ไลบรารีลิงก์แบบไดนามิก)

หากแอสเซมบลีถูกคอมไพล์เป็น Class Library และให้ประเภท (types) เพื่อให้แอสเซมบลีอื่นๆ ใช้งาน จะมีนามสกุลไฟล์เป็น .dll (Dynamic Link Library)

  • DLL ไม่สามารถรันได้เอง (Standalone)
  • DLL ไม่สามารถเรียกใช้งานโดยตรงได้ เนื่องจากออกแบบมาเพื่อโหลดและรันโดยโปรแกรมอื่น
  • DLL จะใช้ Process และ Memory Space เดียวกับแอปพลิเคชันที่เรียกใช้
  • สามารถนำกลับมาใช้ซ้ำในแอปพลิเคชันอื่นได้ ตราบใดที่ผู้เขียนโค้ดรู้ชื่อและพารามิเตอร์ของฟังก์ชันและกระบวนการในไฟล์ DLL

EXE - Executable File Format (ไฟล์รันได้)

หากแอสเซมบลีถูกคอมไพล์เป็น Application จะมีนามสกุลไฟล์เป็น .exe

  • EXE สามารถรันได้เอง (Standalone)
  • EXE สร้าง Process และ Memory Space แยกต่างหาก

สรุปความแตกต่างหลัก

คุณสมบัติDLLEXE
การรันไม่สามารถรันเองได้รันเองได้
Process & Memoryแชร์กับ Callerสร้างใหม่แยกต่างหาก
วัตถุประสงค์Library สำหรับ reuse codeApplication หลัก