Oppure

Loading
19/02/10 13:41
systemgvp
salve.

Ho creato una libreria dll, e al suo interno oltre che a delle funzioni ci ho messo pure un form con delle immaggini.

Il problema nasce dal fatto che se nella seconda applicazione che deve sfruttare questa dll si fa riferimento a procedure o funzioni che contengono i riferimentia quel form contenuto nella DLL, la seconda applicazione si compila ma non si avvia.
aaa
27/02/10 21:26
systemgvp
possibili soluzioni?
aaa
01/03/10 18:03
alessandrob
Forse stai sbagliando l'utilizzo.

Una dll rende disponibili delle procedure e delle funzioni che puoi richiamare, con gli opportuni parametri.

Devi però fare attenzione alla memoria utilizzata, dato che le due strutture (programma e dll) non la condividono.

Attenzione anche al tipo dei parametri: per passare una stringa devi convertirla in pChar e gestirla come tale nella dll (o riconvertirla) e viceversa per il ritorno come risultato di funzione.
aaa
01/03/10 20:46
systemgvp
quindi non c'è possibilità di recuperare oggetti (o form) contenuti in una dll?
aaa
02/03/10 17:53
alessandrob
In una dll classica non è possibile; devi ricordarti che una dll è potenzialmente utilizzabile anche da programmi scritti in altri linguaggi, quindi deve essere predisposta con una opportuna interfaccia di collegamento il più possibile indipendente dal sistema di programmazione del programma che la chiama.

Se utilizzi Delphi puoi utilizzare i package, equivalenti a librerie (dll), ma nei quali puoi inserire anche oggetti (anche se personalmente non li ho mai utilizzati).

In ogni caso, devi vedere qual'è lo scopo del tuo progetto.

Io utilizzo delle dll con dei form all'interno, ma i form sono necessari al corretto funzionamento (meglio stato di avanzamento) delle funzioni e procedure presenti nella dll, senza avere la necessità di essere accessibili dal programma principale.
aaa