View Full Version : [VB6] Conoscere i metodi e le proprietà delle DLL
Ciao, ho bisogno del codice in vb6 per conoscere i metodi e le proprietà delle DLL.
cioè devo fare quello che in java si chiama reflection.
lo scopo è:
copiare 2 oggetti
la funzione copia_oggetto accetterà 2 parametri in input di tipo Object uguali.
ciclo tutti i metodi e tutte le property del primo oggetto e le copio nel secondo.
in java si accede alla classe dell'oggetto con il metodo getClass() , poi ai suoi metodi con getMethods() , ma in vb6 non ho idea di come si faccia...
su internet non ho trovato codice, nemmeno discussioni che soddisfassero le mie richieste..
confido in voi :-)
grazie anticipate
In VB6 devi usare la TypeLib Information, che fa capo alla dll :
C:\WINDOWS\system32\TLBINF32.DLL
Prima aggiungi il reference al progetto VB6, poi la usi via codice.
Ad esempio questo codice essenziale mostra come ricercare su disco la DLL da esaminare e ritorna i nomi delle classi contenute nella DLL stessa ( richiede una ListBox... ) :
Dim tliTypeLibInfo As TLI.TypeLibInfo
Set tliTypeLibInfo = New TypeLibInfo
tliTypeLibInfo.ContainingFile = percorsoDll & nomeFileDll
Dim tliTypeInfo As TypeInfo
MsgBox (tliTypeLibInfo.TypeInfoCount)
For Each tliTypeInfo In tliTypeLibInfo.TypeInfos
List1.AddItem (tliTypeInfo.Name)
List1.AddItem ("")
Next
;)
In VB6 devi usare la TypeLib Information, che fa capo alla dll :
C:\WINDOWS\system32\TLBINF32.DLL
Prima aggiungi il reference al progetto VB6, poi la usi via codice.
Ad esempio questo codice essenziale mostra come ricercare su disco la DLL da esaminare e ritorna i nomi delle classi contenute nella DLL stessa ( richiede una ListBox... ) :
innanzitutto grazie per aver risposto. Ho già provato ad usare la dll che mi sugerisci con risultati scarsi. sicuramente avrò sbagliato qualcosa, riproverò quanto prima e posterò il mio esito qui.
Cmq volevo assicurarmi che tu abbia capito bene il mio problema: ho bisogno di sapere le proprietà e i metodi public di una classe di una dll. Se proprio devo dirla tutta la dll la conosco già perchè di fatto l'ho creata io, ma ho intenzione di creare un metodo che faccia la copia delle variabili da una classe all'altra ( ovviamente se la classe prevede tale property e soprattutto se la property è dello stesso tipo ).
Ancora grazie per la risposta, proverò ancora con la DLL che mi hai suggerito e ti farò sapere
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.