Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    12

    DLL C# COM utilizzata in Excel

    Buongiorno a tutti.
    sono nuovo del forum e mi trovo davanti al seguente problema.

    Ho creato una dll in c# che esegue dei calcoli. La dll è stata compilata in modalità COM per permetterne l'utilizzo in excel.
    Dopo la compilazione nella cartella bin del progetto ho un file .tlb e un file .dll.

    Sul mio pc dove risiede anche il progetto il file funziona, Excel vede correttamente il file tlb e i calcoli vengono eseguiti. Sul pc di un mio collega (dove non è presente e compilato il progetto) ho copiato la cartella contenete il file excel, il file tlb e la dll ma durante l'esecuzione dei calcoli mi dice che non riesce a creare l'istanza ocx (errore 429). Ho provato a copiare la dll e il file tlb nella cartella System32 ma niente da fare. Nel file Excel vedo il riferimento al file .tlb. Il pc del mio collega ha i diritti di amministratore.

    Ho notato che nei riferimenti dll in excel sul mio pc (dove risiede il progetto) il percorso del file tlb punta al progetto e non al file .tlb presente nella cartella stessa del file .xls.

    Aiutatemi a capire. Grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Hai registrato la DLL con Regsvr32 ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    12
    Ho provato a mi restituisce il seguente errore.
    Immagini allegate Immagini allegate

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Prova a registrare il file .tlb con la

    regtlb
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    12
    grazie per la tempestiva risposta.
    Avevo settato nel progetto i parametri indicati nelle immagini allegate.

    Non riesco a capire perchè nel mio pc dove risiede il progetto funzioni mentre nel pc del mio collega e in altri pc no. Il framework è installato correttamente perchè altre applicazioni .net funzionano.
    Immagini allegate Immagini allegate

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    12
    Seconda immagine
    Immagini allegate Immagini allegate
    • Tipo di file: gif 2.gif‎ (16.4 KB, 21 visualizzazioni)

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    12
    provato a registrare il file .tlb usando il comando regtlibv12.exe perchè regtlibv non l'ho trovato.
    Mi indica che la registrazione è avvenuta con successo.

    Poi quando vado ad aggiungere il file .tlb nei riferimenti in excel mi dice che "Errore di caricamento dll". Ho riprovato poi a registrare la dll ma appare l'errore di prima.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    12
    Sono riuscito a far funzionare la dll sul pc del mio collega però ho effettuato dei passaggi che secondo me, trovando la giusta soluzione :master: , si potrebbero evitare

    Le operazioni sono:
    - Copiato la dll e relativo file .tlb nella cartella c:\programmi\Microsoft Office\office12
    - Registrato la dll usando RegAsm.exe presente nella cartella del framework
    - Registrato il file .tlb usando regtlibv12.exe però poi ho dovuto rimuvoere la registrazione (parametro -u). Ho notato che se non eseguo ques'ultima operazione il file .tlb nei riferimenti in excel rimane linkato alla directory del file .xls (sul desktop). Infatti poi devo indicare il nuovo percorso (nei riferimenti di excel) del file tlb presente nella cartella di office.

    Qualceh suggerimento? Grazie ancora per l'aiuto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.