工作總結之DLL註冊

來源:互聯網
上載者:User

        在windows作業系統中,如果要使用一個組件就必須註冊,這個註冊其實就是在註冊表中寫入標識,當然還必須首先把組件放入到系統目錄中,因為系統要對該組件進行統一的管理.我們還是先介紹什麼是組件?

       說到組件,我們的第一個反映是他必須是物件導向的,其實在windows下唯一需要註冊的就是com組件,因為windows系統只有對com組件的掌控才有實際的意義,因為com組件是跨語言的,任何的語言的程式都可以從作業系統中擷取com組件,當然組件還有很多中,但只有com組件在業界形成了標準,所以才可以註冊.例如,java也有自己的組件,jar檔案,但是就算sun說服微軟為他提供com組件的服務,又有什麼用呢,其實是多次一舉.其實按照我的理解,windows不替使用者掌控com組件也是可以的,因為只要找到路徑照樣可以使用,但是現在的形勢是似乎必須註冊,然後其他人引用的時候,必須經過系統的認可.這也成為了一種標準吧.

       我們也知道com組件的存在形式有很多種,ocx,dll,com,exe,但是我經常發現有些人見到dll,他就想註冊,似乎dll必須註冊才可以使用,有的還把動態連結程式庫,放到系統目錄下,如果是普通的動態連結程式庫,這樣做是完全沒有必要的,因為系統根本不會理會這些毫無統一規範的小東西,你愛放哪放哪,只要調用的時候指明路徑就可以了.

       我們還要說明一點,那就是動態連結程式庫是一種調用方式,而不是一種標準,因為實現動態串連每種語言幾乎都有自己的實現方式,由於他也是二進位的,所以如果你知道某種dll的結構也是可以引用的,例如,java就可以調用delphi的dll,因為他理解delphi的dll實現方法,就可以進行解析映射到自己的語言裡面進行調用.

       最後說明一點,不是com組件的dll是不可能通過組件註冊註冊成功的,因為在註冊的時候會檢查該dll的介面,是否符合com組件結構.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.