cerco di capire...
babsevensix wrote:
> Salve a tutti, volevo un vostro parere riguardo al seguente problema:
> abbiamo creato una applicazione che, scandagliando delle sotto
> directory, individua dei moduli dell'applicazione stessa e le carica
> tramite una interfaccia comune.
Una sorta di Plugin basato su interfacce giusto?
> Fin qui, tutto bene, l'applicazione
> funziona e funziona bene. (ogni modulo è un insieme di DLL)
> A questo punto il problema si complica, in quanto per necessità,
> abbiamo fatto in modo che un Modulo possa contenere anche delle DLL
> di altri moduli.
Ogni Plugin può a sua volta avere Plugin... ok?
> Quindi, ad esempio, il Modulo A contiene al suo interno delle DLL del
> modulo B. Queste DLL le copiamo nel modulo stesso affichè, lo
> sviluppatore, certifichi il modulo sviluppato con quella determinata
> versione dell DLL del Modulo B.
??
> Fin qui sarebbe tutto bello se non fosse per il fatto che, in fase di
> Runtime succede un inconveniente: supponiamo che il Modulo A sia alla
> versione 2.0.999 e che il modulo B abbia delle DLL del Modulo A della
> versione 1.0.423. A questo punto, quando dall'applicazione utilizzo il
> Modulo A , ho le DLL della versione 2.0.999 e quando utilizzo il
> Modulo B, utilizza non le DLL del Modulo A della versione 1.0.423,
> bensì quelle della
> 2.0.999
> Avete qualche idea per risolvere tale situazione?
Con quale tecnica caricate a runtime gli Assembly dei Plugin/Moduli?
Assemblyl.Load(...)
prova a vedere se queste 2 discussioni possono in qualche modo aiutarti:
http://www.google.it/groups?hl=it&lr=&threadm=e8HzCSXGEHA.1228%40TK2MSFTNGP11.phx.gbl&rnum=2&prev=/groups%3Fq%3DAssembly%2BPlugin%2Bgroup:microsoft.public.it.dotnet.*%2Bauthor:Mauro%2Bauthor:Servienti%26hl%3Dit%26lr%3D%26selm%3De8HzCSXGEHA.1228%2540TK2MSFTNGP11.phx.gbl%26rnum%3D2
e (forse più esaustivo, almeno lo è stato per me)
> Grazie infinite
Ciao
> Alberto
Mauro