Vado con l'esposizione del problema:

Ho un ActiveX con un Modulo di classe e un Modulo.

Il modulo di classe richiama una particolare funzione contenuta nel modulo, elabora dei dati e restituisce un output.

La funzione deve poter gestire una variabile (array) tipo questa

codice:
public oContent() as tipoUtente
dove tipoUtente è simile alla seguente struttura:

codice:
Type tipoUtente
    strAppID As String
    intTotalAddresses As Integer
    isClient As Boolean
End Type
La DLL viene richiamata da un applicativo al quale possono accedere N utenti contemporaneamente, nasce quindi il problema di "assegnare" ad ogni accesso alla DLL la variabile
codice:
oContent()
in modo che ogni "accesso" gestisce la "propria" variabile, ovvero in modo che i dati salvati dall'utente A nella variabile
codice:
oContent()
generata dal primo accesso, siano completamente slegati di dati salvati dall'utente B nella variabile
codice:
oContent()
generata dal secondo accesso.

Questa la situazione. La domanda è:

Come devo definire e dove la variabile
codice:
oContent()
?

La Struttura del tipo si trova in un modulo ed è definita come PUBLIC, ma la variabile
codice:
oContent()
se la definisco in un modulo come pubblica non mi garantisce la biunivocità dell'utilizzo con chi effettua la chiamata alla DLL.
Se invece la definisco nel modulo di classe a livello di Dichiarazione, essendo un array, mi genera un errore.

???
Qualcuno sa come aiutarmi?
Tnx