Newsgroup: it.comp.appl.access
Titolo: La libreria dei tipi o la creazione guidata richiesta non è un progetto VBA

Salve ragazzi,
in una funzione di un db controllo l' esattezza dei rifermenti di un
progetto, restituendomi i nome dei rif. errati con dei messaggi:
Dim refLoop As Reference
On Error Resume Next
Dim strReport As String
If Application.BrokenReference = True Then
    strReport = "Il riferimento risulta mancante:" & vbCr
    For Each refLoop In Application.References
        If refLoop.IsBroken = True Then
            strReport = strReport & "    " & refLoop.Name & vbCr
        End If
    Next refLoop
Else
    strReport = "Tutti i riferimenti sono corretti."
End If
MsgBox strReport
End Function
Ora, premetto che tale db implementa gli ocx relativi alle statusbar di
windows comctl32.ocx e che l' errore in oggetto, si presenta solamente
con il db convertito in MDE.
Avete chiarimenti in merito ?

mak ha scritto:

Sei sicuro che con un MDE si possano caricare i riferimenti alle
Librerie....?
In VB solitamente si usa LoadLibrary API sul metacompilato ...
Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal
lpLibFileName As String) As Long
e FreeLibrary alla fine...!
Vedi se può servirti...!
@Alex

 @Alex- Nascondi testo tra virgolette -- Mostra testo tra virgolette -
Ciao @Alex,
mi hai anticipato, ma ho trovato la "fesseria":
Praticamente le librerie si possono caricare o almeno verificare sel
collegamento e true o false, ma non vale se nel, progetto VBA sono
state inserite le password che impediscono la visualizzazione.
Infatti ho eliminato le password  e ricaricato il progetto in mde e
richiamando la funazione restituisce i rifermienti corretti.
Scusate per il disturbo...

 Scusate per il disturbo...
Se hai voglia mi spieghi perchè devi caricare i riferimenti dell'OCX
da codice...?
Io uso degli OCX della DBI, quindi da distribuire, e non ho mai avuto
il problema
di caricare Runtime i riferimenti....!
Non è che è una moda mettere del codice inutile....?
@Alex

 @Alex
Non uso la procedura per caricare gli ocx, verifico solo se tutti i
riferimenti sono corretti, in caso contrario so quale riferimento è
mancante, e su cosa devo intervenire se nell' applicazione  vengono
dati messaggi di errori relativi a rif. mancanti.
Non so se sia un intervento inutile , ma a me personalemnte è servito
in alcuni casi dove la registrazione dell' ocx ad. esempio,  non era
andata a buon fine in alcune macchine.
Saluti

 Saluti
No la cosa non quadra... se la registrazione non è andata a buon fine
non è ricaricando i riferimenti che fai funzionare l'applicativo...!
Se l'applicativo ha i riferimenti giusti e l'OCX viene registrato
correttamente funziona, altrimenti devi curare la registrazione dl
componente...
Io sono molto dubbioso sull'utilità di quanto fai, ma è solo un mio
parere...
@Alex

 non è ricaricando i riferimenti che fai funzionare l'applicativo...!
Premetto, non sto discutendo sull' utilità o meno della funzione in
se, ma non capisco , correggimi se sbaglio, perchè mi evidenzi il
fatto che ricarico il riferimento:
Utilizzando la proprietà BrokenReference e IsBroken vengono restituiti
 elementi di sola lettura; utilizzo solo il risulato boleano per
stabilire se esistono elementi interrotti e riportare poi il risultato,
o mi sbagio?

 o mi sbagio?
Non sbagli, ma la esegui tutte le volte... a che prò..?
Se l'applicativo non funziona dopo l'installazione l'unica cosa da fare
è, come ti dicevo, verificare la registrazione...!
A quel punto non capisco il senso di testare dall'applicativo sempre le
reference...!
Se mi dici che hai un Tool separato che lanci per fare il test dopo il
Setup, posso anche convenirne, ma nell'applicativo a mio avviso non ha
un'utilità effettiva.
Vabbè sono mie considerazioni....!
@Alex

 @Alex
Esatto.... nella toolbar ho inserito un richiamo alla funzione tramite
una piccola form, che utilizzo solo nel caso di bisogno.
Ciao