songoge
23-08-2004, 17:26
Salve a tutti!
Sto creando un software abbastanza grande ed ho la necessità di utilizzare le dll.
Il problema nasce qui.
L'istanza di una classe deve essere utilizzata sia nella dll che nel file eseguibile.
Nella dll ho dichiarato la variabile extern per poter poi dichiararla nel file exe, ma il compilatore dice "...error LNK2001: unresolved external symbol..."ecc..
Provo a cambiare metodo. Provo a passare l'istanza con un puntatore ma si complicano le cose perchè devo cambiare molto codice e nn va bene.
Cambio approccio cercando di creare una classe globale in cui dichiarare le classi che uso e poi creare una solo istanza globale nell'exe. Altro problema il complilatore nn riconosce le classi "...error C2501: 'CCamera' : missing storage-class or type specifiers..." dichiarate nella dll.
Tutte le classi sono così strutturate. Ognuna ha un Header (.h) e un file dove sono definite (.cpp) le funzioni
Qualcuno ha qualche idea da suggerire? Dove sbaglio?
Se non è chiaro ciò che ho scritto fate sapere!!
Grazie.
Sto creando un software abbastanza grande ed ho la necessità di utilizzare le dll.
Il problema nasce qui.
L'istanza di una classe deve essere utilizzata sia nella dll che nel file eseguibile.
Nella dll ho dichiarato la variabile extern per poter poi dichiararla nel file exe, ma il compilatore dice "...error LNK2001: unresolved external symbol..."ecc..
Provo a cambiare metodo. Provo a passare l'istanza con un puntatore ma si complicano le cose perchè devo cambiare molto codice e nn va bene.
Cambio approccio cercando di creare una classe globale in cui dichiarare le classi che uso e poi creare una solo istanza globale nell'exe. Altro problema il complilatore nn riconosce le classi "...error C2501: 'CCamera' : missing storage-class or type specifiers..." dichiarate nella dll.
Tutte le classi sono così strutturate. Ognuna ha un Header (.h) e un file dove sono definite (.cpp) le funzioni
Qualcuno ha qualche idea da suggerire? Dove sbaglio?
Se non è chiaro ciò che ho scritto fate sapere!!
Grazie.