通過COM,可以獲得對目標系統的絕對控制權。例如:在IE中使用javascript的ActiveXObject對象,可以創建某些對象,這些對象被設計爲可以直接訪問或與系統屬性和文件進行交互。人們會認爲常識意味着用戶在安裝瀏覽器後立即禁用IE中的ActiveX功能,以確保他們的系統在瀏覽網絡時受到保護,或者至少密切關注他們允許的網站。但是,我懷疑許多普通PC用戶都知道如何或爲什麼要這樣做,或者只是厭倦了隨時間的微觀管理。我認爲任何個人電腦用戶或管理我的COM類迎合將非常感激不必處理。謝天謝地,它看起來像IE版本打包ActiveX默認現在禁用。VB:獲取編譯的DLL的調用應用程序信息; COM安全
我已經建立了一個非常多在VB中多功能的COM類庫。我不打算從任何網站調用它,但該功能只是COM平臺的一部分。我想阻止從IE中調用該庫,除非該網站位於白名單域中,以主動保護用戶(並最終保護整個Intranet)免受惡意網站的傷害。 VB.Net中的最佳方法是告訴哪個應用程序調用了我的DLL,以便能夠判斷它是否從任何源自IE的命令或進程中調用?而且,什麼域名稱爲我的DLL?
編輯:我相信這可能是重複的。請參閱:Calling Assembly to get Application Name VB.NET
System.Environment.GetCommandLineArgs()(0)
讓我調用應用程序路徑。有了這些信息,我可以將它與黑/白名單的應用程序進行比較。現在問題已解決。
「我已經構建了一個非常靈活的COM類庫」 - 這是什麼意思? – 2010-10-15 01:35:08
@Mitch小麥:這意味着我的com類無意中讓調用應用程序完全控制客戶端系統,包括它是從javascript衍生出來的。 – 2010-10-15 01:38:57
@ bob-the-destroyer:這聽起來不是個好主意...... – 2010-10-15 02:38:32