我有一個應用程序,我設計了這個應用程序有一個相當不錯的核心dll,其中包含我的主視圖的exe使用的API。我希望允許其他開發人員訪問此核心DLL,但我不希望他們擁有和我一樣多的訪問權限,因爲這會帶來安全風險。暴露我的核心dll的標準方式是什麼?有什麼特別的設計模式我應該看?什麼是將關鍵類/方法我的核心API暴露給第三方開發者的最佳方式?
我使用C#
編輯:我的問題是如此這裏有點含糊一些澄清
我的程序被部署爲Windows EXE它引用core.dll。我希望其他人在啓動時通過在/ extensions目錄中加載dll來創建可以動態加載到我的程序中的擴展。第三方dll將在我的core.dll中繼承/實現某些類/接口。我只想給第三方有限訪問我的核心,但我想給我的exe額外訪問核心。
我應該提到,這是我第一次編寫導入DLL的程序。也許這種允許用戶添加擴展的方法是錯誤的。
你在說什麼安全風險? exe在哪裏運行(服務器端還是客戶端)? – 2010-10-14 03:02:01
@Adrian K - 這實際上是一個很好的觀點。我想他正在談論一個Web API,但這聽起來像是他想給其他開發人員「添加」一個縮減的DLL(在他們的項目中添加對DLL的引用)。這不是一個真正的API。 – RPM1984 2010-10-14 03:09:41
我不想進入語義學,但術語SDK更合適嗎? – i8abug 2010-10-14 04:22:53