Windows中DLL文件的意義及其作用
DLL是Dynamic Link Library的縮寫,意為動態鏈接庫。DLL文件即動態鏈接庫文件,是一種可執行文件,它允許程序共享執行特殊任務所必需的代碼和其他資源。Windows提供的DLL文件中包含了允許基於windows的程序在Windows環境下操作的許多函數和資源。在WINdows中,許多應用程序並不是一個完整的可執行文件,它們被分割成一些相對獨立的動態鏈接庫,即DLL文件,放置於系統中。而當我們執行某一個程序時,相應的DLL文件就會被調用。一個程序可有多個DLL文件,一個DLL文件也可能被幾個應用程序所共用,這樣的DLL文件就稱為共項DLL文件。DLL文件一般被存放在C:WindowsSystem32目錄下。
1、DLL多數情況下是帶有DLL擴展名的文件,但也可能是EXE或其他擴展名。它們向運行於Windows操作系統下的程序提供代碼、數據或函數。程序可根據DLL文件中的指令打開、啟用、查詢、禁用和關閉驅動程序。
2、DLL可在“C:Windows”目錄“C:WindowsSystem32”目錄和程序的安裝目錄中找到。如果啟動程序,但一個或多個DLL文件丟失或毀壞,則會收到出錯消息,如“找不到xyz.dll”。如果啟動的程序帶有一個過期的DLL文件或不匹配的DLL文件,則會出現“未定義的動態鏈接調用”消息。這時,你可在其他電腦上找到正確的DLL文件並將它拷貝到適當的目錄下,程序就能正確運行
3、DLL文件的作用是:
1).多個應用程序共享代碼和數據:比如Office軟件的各個組成部分有相似的外觀和功能,這就是通過共享動態連接庫實現的。
2).在鈎子程序過濾系統消息時必須使用動態連接庫。
3).動態連接庫以一種自然的方式將一個大的應用程序划分為幾個小的模塊,有利於小組內部成員的分工與合作。而且,各個模塊可以獨立升級。如果小組中的一個成員開發了一組實用例程,他就可以把這些例程放在一個動態連接庫中,讓小組的其他成員使用。
4).為了實現應用程序的國際化,往往需要使用動態連接庫。使用動態連接庫可以將針對某一國家、語言的信息存放在其中。對於不同的版本,使用不同的動態連接庫。在使用AppWizard生成應用程序時,我們可以指定資源文件使用的語言,這就是通過提供不同的動態連接庫實現的。
VC++、C++ Builder、Delphi都可以編寫DLL文件。Visual Basic 5.0以上版本也可以編寫一種特殊的DLL,即ActiveX DLL。
轉自:http://lxc200888.blog.163.com/blog/static/42059400200842682756468/