MicrosoftWindowsPdc Resources
MicrosoftWindowsProcessorAggregatorEvents Resources
MicrosoftWindowsSleepStudyEvents Resources
MicrosoftWindowsStorageTieringEvents Resources
MicrosoftWindowsSystemEvents Resources
Microsoft® Account Token Provider
Microsoft Windows BITS Managed Library
Microsoft.BitLocker.Structures
Microsoft.Build.Framework.dll
Dia based SymReader
Microsoft Managed DirectX Helper Classes Debug
Microsoft Managed AudioVideoPlayback
Microsoft Managed DirectX Diagnostics
Microsoft Managed Direct3D Debug
Microsoft Managed DirectInput
Microsoft Managed DirectPlay
Microsoft Managed DirectSound
DismCmdlets
Microsoft Tablet PC API
Microsoft.JScript.dll
Microsoft.Management.Infrastructure.Native.Unmanaged.dll
Microsoft.Office.Interop.Excel
Microsoft.Office.Interop.Visio
Enterprise Library Shared Library
Microsoft.SqlServer.Diagnostics.STrace
Visual Basic Runtime Library
Microsoft.VisualBasic.Vsa.dll
Microsoft® Visual C++ Metadata
Microsoft.Vsa.dll
Microsoft.Vsa.Vb.CodeDOMProcessor.dll
AppBackgroundTaskCmdlets
NetworkSecurityCmdlets
5.1.50918.0
5.1.40728.0
Embarcadero MIDAS Component Package
Microsoft MIDI Mapper
MIFSystemUtility
Migration Engine Core
เมื่อคุณได้รับหน้าต่างข้อผิดพลาดของระบบที่แจ้งว่าไฟล์ DLL หายไป คำถามต่อไปนี้จะเกิดขึ้น: จุดประสงค์ของไฟล์คืออะไร
ไฟล์ DLL มีจุดประสงค์พื้นฐานเพื่อลดโค้ดและเพิ่มประสิทธิภาพคอมพิวเตอร์ ไฟล์ DLL เป็นไลบรารีไดนามิกที่ใช้โดยแอปพลิเคชันทั้งหมด
ข้อผิดพลาดอาจเกิดขึ้นบนพีซีที่ใช้ Windows ที่เชื่อมโยงกับไฟล์ DLL ข้อผิดพลาดเหล่านี้ป้องกันไม่ให้ผู้ใช้เรียกใช้โปรแกรมที่จำเป็น ข้อความแสดงข้อผิดพลาดเริ่มปรากฏขึ้นบนหน้าจอโดยระบุว่าไฟล์ .DLL ใดหายไป ปัญหาสามารถแก้ไขได้โดยค้นหาไฟล์ที่ต้องการแล้ววางลงในไดเร็กทอรีระบบ
ไฟล์ DLL ถูกพิจารณาในการใช้งานส่วนใหญ่ว่าเป็นปัจจัยหลักที่ทำให้เกิดข้อผิดพลาดเมื่อ Windows เริ่มทำงานและทำงาน ไฟล์ DLL นั้นไม่จำเป็นต้องแก้ไขเพราะอาจทำให้เกิดปัญหาใหม่ที่จะส่งผลกระทบต่อโปรแกรมอื่นๆ ไฟล์ DLL
รหัสใน DLL ถือว่าแชร์โดยกระบวนการที่จำเป็นต้องใช้ DLL (ไฟล์อยู่ในหน่วยความจำกายภาพ)
Windows เวอร์ชันเก่า ซึ่งแต่ละกระบวนการทำงานจะมีพื้นที่งานกว้างขวางเพียงแห่งเดียว จำเป็นต้องมีสำเนาของรหัส DLL หนึ่งชุด
ตัวอย่างเช่น โปรแกรมเฉพาะจาก DLL ที่โหลดไม่มีที่อยู่เหล่านี้ในฐานว่าง จากนั้นคุณต้องสร้างสำเนาของรหัส DLL อีกชุดหนึ่งโดยใช้ชุดค่าสัมประสิทธิ์การป้อนข้อมูลที่ย้ายตำแหน่งได้เฉพาะเป็นฐาน หากมีอยู่จริง ต้องกู้คืนหน่วยความจำรหัสพาร์ติชันที่ไม่ว่างจะถูกรีเซ็ตพร้อมกับเนื้อหาและการโหลดซ้ำอย่างรวดเร็วจากไฟล์ DLL เสร็จสิ้น นอกจากนี้ GDI จะโหลดไดรเวอร์อุปกรณ์อื่น ๆ ทั้งหมดดังนั้น Windows จะเริ่มโหลดแพ็คเกจ Windows ที่เหลือ เรียกโปรแกรมเหล่านี้ API จาก USER/GDI
ด้วยเหตุนี้ ไฟล์ DLL จึงมียูทิลิตี้มากมายในคราวเดียว ด้วยการอัปเดต DLL เป็นเวอร์ชันที่ทันสมัย เวอร์ชันก่อนหน้าจะถูกเขียนทับหรือลบออกจากพีซี ตัวควบคุม ActiveX, บันทึกข้อมูลในแผงควบคุม และไดรเวอร์อุปกรณ์ เป็นพื้นฐานของข้อมูลสำหรับ Windows เช่น Dynamic Link Libraries
มีหลายวิธีที่ได้รับการพิสูจน์แล้วว่าสามารถจัดการกับปัญหา DLL:
ไฟล์ปฏิบัติการที่เกี่ยวข้องสามารถโหลดได้เร็วกว่านี้หากคุณเรียกใช้ไฟล์เหล่านี้ในการตั้งค่าที่คล้ายคลึงกันซึ่งถูกคอมไพล์ มาเสริมว่าทุกเป้าหมายมาตรฐานของ Windows มีไฟล์ DLL ที่เกี่ยวข้องกัน
ทางเลือกที่ดีในการผูกการนำเข้ากับสภาพแวดล้อมเป้าหมายคือการบูตด้วยการติดตั้งยูทิลิตี้ แต่โปรแกรมดังกล่าวจะเปลี่ยนค่าตรวจสอบของปฏิบัติการ Windows รุ่นที่ใหม่กว่าไม่มีที่อยู่ของแต่ละไลบรารีที่โหลดอีกต่อไป ซึ่งนำไปสู่การปฏิบัติการที่เล็กกว่ามาก
ไลบรารีการลิงก์แบบไดนามิกจำนวนมากมี .DLL ที่ลงท้ายด้วยไฟล์ แต่ไลบรารีอื่นๆ ใช้ .OCX, .CPL, .DRV แพ็กเกจคำจำกัดความ เช่น UPX บีบอัด DLL ซึ่งนำไปสู่ปัญหา: การอ่าน และส่วนการเขียนโค้ดจะไม่แยกจากกัน ส่วนเหล่านี้คล้ายกับพาร์ทิชันที่ไม่ใช่แบบสาธารณะเพราะเป็นส่วนส่วนตัวภายในแต่ละกระบวนการ
ด้วยเหตุนี้ DLL ที่มีส่วนสาธารณะจะต้องไม่ถูกบีบอัดเมื่อมีหลายแพ็คเกจใช้พร้อมกัน แต่ละอินสแตนซ์ของโปรแกรมจะต้องมีสำเนาส่วนตัวของ DLL หนึ่งชุด