Vai al contenuto
PLC Forum


Libnodave


gma73

Messaggi consigliati

Buon giorno a tutti,

E' la prima volta che scrivo in questo forum, spero di non sbagliare.

Tempo fa ho scaricato da questo forum un applicazione di esempio per utilizzare le librerie in oggetto con VB.Net.

Per poter utilizzare tale applicazione ho dovuto convertirla, ed ora ho i seguenti problemi:

1) In configurazione Debug l' applicazione funziona regolarmente, ma in configurazione Release mi da il seguente errore:

Impossibile caricare la DLL 'libnodave.dll': Impossibile trovare il modulo specificato. (Eccezione da HRESULT: 0x8007007E).

Ho notato che nella cartella bin\debug ci sono due librerie ,libnodave.dll e libnodave.net.dll . Nella cartella bin\release trovo solo libnodave.net.dll .

Il mio progetto come riferimenti ha solo libnodave.net.dll se provo ad aggiungere l' altra libreria , come riferimento, mi da il seguente errore: "Verificare che il file sia accessibile e che l' assembly o il componente COM sia valido"

quindi ho provato a copiare il file libnodave.dll dalla cartella bin\debug alla cartella bin\release e l' applicazione funziona. Ma mi chiedo se la procedura è corretta o se esiste una procedura migliore.

2) Fatta funzionare l' applicazione in modalità Release ho provveduto alla pubblicazione e mi si è ripresentato il medesimo problema, l' ho risolto copiando manualmente

li file libnodave.dll in C:\Windows\system l' applicazione funziona ma non mi sembra un bel modo di risolvere il problema.

Qualcuno ha un' idea per risolvere il problema in maniera diversa e più corretta?

Grazie per l' attenzione

Armando

Link al commento
Condividi su altri siti


Ciao e benvenuto gma73,

come succede sempre con le applicazioni che richiedono librerie esterne, occorre fare in modo che l'eseguibile veda dove sono.

In genere le dll vengono caricate o in "Windows\system" o nella cartella dell'applicazione.

Il modo più semplice per automatizzare la cosa è quello di creare un progetto di installazione utilizzando uno dei vari pacchetti freeware in circolazione (tipo InnoSetup) oppure creandolo all'interno della soluzione usando ciò che è già disponibile nel framework .net.

Io in genere faccio così: cioè creo un nuovo progetto di setup all'interno della soluzione, includendo tutti i file necessari.

Se non hai mai creato progetti di setup dot.net ti consiglio di cercare in rete perchè non è difficile ma non si può condensare tutto in un post.

Se poi, durante le prove, avrai problemi o domande specifiche, possiamo riparlarne.

Ciao

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...