2011-03-28 121 views
0

我正在構建一個應用程序,它將加載用於檢查的不受信任的程序集(即檢索程序集全名)。出於安全原因,我試圖想出一種方法,可以編寫這些程序集,以便在加載時執行代碼。我還沒有用一種方法編碼,但想把它扔到這裏看看是否有人可以。程序集加載時有沒有辦法運行代碼?

我知道我可以將這些程序集加載到不受信任的應用程序域中,從而有效地阻止它們做任何事情,但是如果不需要,我想避免複雜性。

具體來說,我會打電話Assembly.Load<LoadedAssebmly>.FullName。也許有更好的方法來加載程序集名稱而不使用Assembly類?

謝謝, 馬特

回答

1

首先,有個AssemblyName類。它允許您在不加載它的情況下查找程序集的名稱。其次,您可以使用Assembly.ReflectionOnlyLoad加載程序集,該程序使用僅反射上下文 - 不能從此程序集執行代碼。

+0

完美!這是我需要做的。我認爲這不太可能在Daniel的文章中提到的模塊初始化器? – 2011-03-28 13:18:04

+1

它不應該,但我建議你從安全角度確定這對你是否重要。 – 2011-03-29 05:55:59

相關問題