可以使用動態加載或靜態加載的方式使用DLL中的方法,但是怎麼能夠獲取DLL中定義的變量來使用它呢?
要明確2個概念:
1、Dll是EXE的一個變種形態。它是可執行的。
2、Dll雖然由EXE調用,但執行讀入內存後,Dll與EXE分別是獨立的內存區域,相互不聯系的。二者的數據(變量等)不能傳遞的。
為了能讓Dll是EXE通聯,往往可以通過以下幾種方式建立聯系。
1、發消息,它是單相思,消息發出後,對方知道否,接受了嗎,不得而知。
2、通過磁盤文件傳遞,數據分別寫入一個磁盤文件中,數據結構自己可以定。但它有局限性,不能及時獲取。
3、共用內存,即在將EXE文件的變量,在內存中的地址,傳遞給Dll,實現共享此內存地址(變量),這是最好的方式,如同全局變量使用。