Когато работите с модули на плъгини в техните собствени поддиректории, съществува добре известният проблем, че тези модули не успяват да се заредят, след като се опитат да заредят съответните им зависимости от техните поддиректории. Решение е да се заредят добавките в AppDomains, чиито PrivateBinPath
са зададени в техния AppDomainSetup
обект при инициализация. Това обаче причинява други трудности, свързани с маршалинга/комуникацията между домейни на приложения, особено ако приставките трябва да предоставят някакъв GUI.
Когато аспектите на сигурността имат по-нисък приоритет (некритично помощно приложение, няма сериозни проблеми при сривове, причинени от дефектни плъгини), имах следната идея: При стартиране на приложението трябва да се търсят всички директории на плъгини и нова Трябва да се създаде AppDomain, който има тези директории в своя bin път. След това цялото приложение и неговия GUI се изпълняват в този нов AppDomain, заедно с всички добавки.
При дадените обстоятелства има ли причини да се избегне това решение? Или може би има някакви причини, поради които това решение дори не е осъществимо?