延遲加載dll: 空間,但並不是所有的dll都是經常使用的,有些可能僅在特殊情況下才會使用到,比如你需要打印功能時,額外的一個dll用於負責 此事,但這項功能可能很少人使用,如果程序一啓動就加載會有些浪費,謂詞微軟提供了延遲載入dll的功能,就是當你執行到某個 函數的時候,如果是首次執行,那麼可以在用到時加載該dll,甚至可以在用完再重新釋放卸載掉該dll。方法比較簡單,只需要以下 幾個步驟即可: 件全名。他的作用是 __FUnloadDelayLoadedDLL2來調用卸載。 通過延遲載入後,相關的函數會被重置,如果我們不用__FUnloadDelayLoadedDLL2來卸載,而直接用FreeLibrary卸載的話,由於相 關函數沒有被重置,這樣當我們下一次試圖調用dll的函數時,就會引發訪問違規。 大小寫完全相同,否則無效。如果調用了卸載函數,而沒有打開鏈接器的unload開關,則函數調用沒任何效果。 延遲載入的另一個特性就是我們調用的函數會被綁定到進程地址空間中的一個內存地址上,這個地址是系統認爲該函數應該在的位置 |
關於VS的延遲加載dll的使用和理解
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.