我在Delphi 10.2中使用TWebBrowser組件,該組件從SHDocVW_TLB類型庫中導入。TWebBrowser:禁用所有安全限制
我想使用這個網絡瀏覽器來瀏覽可信環境中的本地文件和文件。但我注意到由於安全限制因素,本地文件(更確切地說,我已將使用this code加載到瀏覽器組件中的自定義HTML內容)發送到局域網或廣域網的AJAX調用是不可能的。
我的目標是禁用此Web瀏覽器控件的所有安全限制(我意識到這些風險)。
不知道是否有其他方式,但我想我必須創建一個自定義IInternetSecurityManager。在我的研究中,我發現了this document by Microsoft,並解釋瞭如何編寫這樣的SecurityManager。 但是無處可去我可以找到如何將這個自定義IInternetSecurityManager插入/覆蓋到我的TWebBrowser控件中。
我需要做什麼才能完全禁用所有安全限制? 謝謝你的提示!
查看[EmbeddedWB的安全管理器](https://github.com/ghquant/Delphi-EmbeddedWB/blob/master/Source/SecurityManager.pas)以及瀏覽器控件如何使用它。 – Victoria
@Victoria文件SecurityManager.pas包含類實現'TSecurityManager = class(TComponent,IInternetSecurityManager)',但是在代碼中我找不到任何TSecurityManager對象的實際使用,除了Source/EwbReg.pas,它只註冊零件。所以我仍然不知道如何告訴TWebBrowser使用自定義的安全管理器實現。 –
您需要處理OnQueryService,並在詢問有關IInternetSecurityManager服務時,創建並將其返回給調用者。 –