2010-08-17 23 views
0

如果可能,我想阻止我的ActiveX控件被不可信頁面意外執行,因爲它可以用來下載和運行文件。從ActiveX控件,我可以告訴它正在創建哪個域?

一個想法是讓控件知道它實例化的HTML頁面的域,並提示用戶是否信任該域。它會記住註冊表中的這個選擇。如果該控件是由不同域呈現的頁面使用的,則會要求用戶信任該新域。

有沒有辦法讓ActiveX控件查詢IE並詢問從哪個域下載頁面?

回答

2

是的,執行IObjectWithSite並緩存您在SetSite()中給出的指針。

然後:

  1. QueryInterface()您的網站IID_IServiceProvider
  2. QueryService()IServiceProvider對於SID_STopLevelBrowser, IID_IServiceProvider
  3. QueryService()頂級IServiceProvider對於SID_SWebBrowserApp, IID_IWebBrowser2
  4. 致電get_LocationURL
相關問題