2011-12-20 13 views
6

Ho un progetto di base 6 ".dll" visivo che utilizza riferimenti e quando si fa clic sull'opzione "File-> Crea dll", dovrebbe generare un file dll. Bene, quando si fa clic su "File-> Crea dll", ottengo l'errore "Errore nel caricamento della DLL"."Errore nel caricamento della DLL" durante la compilazione della DLL in VB6

Come posso vedere quali riferimenti mancano?

+0

Benvenuto. Non c'è bisogno di mettere una firma sul fondo, è già inclusa appena sotto il tuo post. Desiderate anche controllare le [FAQ] (http://stackoverflow.com/faq). – Deanna

+0

Non puoi scorrere il codice e vedere dove esplode? –

+0

No Mark, non posso. "Step Over", "Step Into", "Start", "Start with full compile" - tutti restituiscono "Errore nel caricamento della DLL" – Ivan

risposta

2

In Progetto -> Riferimenti.

Cerca la parola MANCANTE: davanti alla DLL che non sono lì.

+0

non ci sono riferimenti "MANCANTI" etichettati, ma durante la compilazione, ottengo l'errore menzionato :( – Ivan

+1

Hai installato il vs6 service pack 6? In caso contrario, installalo e prova ancora una volta. –

+0

già provato, ma senza esito positivo. Puoi fornire un link dove hai scaricato – Ivan

0

È passato un po 'di tempo ma dal menu in alto - "Progetto" -> "Riferimenti" e quelli mancanti di solito sono evidenziati o mancano accanto a loro.

0

Se non si dispone di riferimenti MANCANTI, provare a compilare le librerie del progetto utilizzando la compatibilità del progetto anziché la compatibilità binaria. VB6 può essere confuso con la compatibilità binaria quando ci sono più librerie di riferimento in una gerarchia di librerie.

2

ho visto verificarsi questo errore quando i componenti di riferimento vengono ricompilati senza compatibilità ma le versioni precedenti delle DLL sono non non registrati in anticipo, in modo che le chiavi di registro per i typelibs non vengono rimossi e queste voci del Registro fasulle indicano le nuove DLL.

Di solito mi occupo di questi con uno strumento di pulizia del registro interno in grado di rimuovere la registrazione typelibs/clsid/interfacce in base alla posizione del disco typelib. Puoi provare a spostare i file fisici dei progetti referenziati in una posizione diversa sul disco e gli regsvr32 lì, rimuovere manualmente i riferimenti dal file di progetto, riavviare l'IDE e riaprire il progetto, infine aggiungere riferimenti e verificare che la posizione di dll nella finestra di dialogo aggiungi riferimento punti al nuova posizione dei file.

0

In Progetto -> Riferimenti, ricontrolla la posizione di tutti i tuoi riferimenti. Il tuo riferimento potrebbe avere il nome giusto ma potrebbe puntare a un'altra istanza della stessa DLL.

+0

Per una domanda vecchia come questa, è davvero necessario fare uno sforzo per spiegare perché la soluzione suggerita dovrebbe funzionare - questo è particolarmente importante per una domanda che ha già un certo numero di risposte. – ishmaelMakitla

Problemi correlati