0
我有一個應用程序,它說在C:\ app中運行,並在運行時從C:\ bin \ assembly1.dll,'assembly1.dll'具有依賴關係到'assembly2.dll'和'assembly3.dll'兩者都位於C:\ bin中,有沒有辦法確保C:\ bin \ assembly1.dll可以將它的兩個依賴項加載到相同的目錄中?將其他程序集的依賴關係加載到其目錄中的加載應用程序目錄之外的目錄中?
我有一個應用程序,它說在C:\ app中運行,並在運行時從C:\ bin \ assembly1.dll,'assembly1.dll'具有依賴關係到'assembly2.dll'和'assembly3.dll'兩者都位於C:\ bin中,有沒有辦法確保C:\ bin \ assembly1.dll可以將它的兩個依賴項加載到相同的目錄中?將其他程序集的依賴關係加載到其目錄中的加載應用程序目錄之外的目錄中?
這取決於如何加載c:\bin\assembly1.dll
。如果您使用Assembly.LoadFrom
方法,那麼這應該足夠了。 LoadFrom
方法將添加目標爲加載器的提示列表的目錄。從此它將探測該目錄以解決DLL依賴關係。
程序集加載和依賴性探測的過程非常複雜。 MSDN上有一個相當大的教程,其中涵蓋了詳細信息。第4節可能最感興趣的是你