Domanda

COM Server iscritto su asm reg situato in una cartella di rete non funziona correttamente. Quando si tenta di creare l'oggetto ottiene l'errore "errore di automazione". Tutto funziona correttamente se la dll si trova su un disco locale.

Ulteriori informazioni:

  • COM libreria scritta in. Net 3.5

  • L'accesso al COM attraverso la macro VB

  • Biblioteca ha un nome forte

È stato utile?

Soluzione

Mettere server COM su una condivisione di rete è in cerca di guai. Sarà casuale esito negativo quando la lettera di unità mappata non è mappato o mappato altrove. Avrai almeno desidera che il percorso UNC al server (come \\machine\folder\etc), non così sicuro che avrai questo fuori del Regasm.exe con l'opzione / codebase. Verificare il valore della chiave di registro, HKLM \ Software \ Classes \ CLSID {GUID}. Facciamo in modo che hai utilizzato / codebase, questo non può funzionare senza di essa.

La fiducia potrebbe essere un problema, l'uso Fuslogvw.exe per vedere cosa sta succedendo. Avrete bisogno caspol.exe alla fiducia assegnare.

Poi c'è DLL dipendenti, né di Windows né il CLR sarà in grado di trovarli. Per vedere cosa sta realmente accadendo utilità ProcMon uso SysInternals'. Vedrete COM guardando attraverso chiavi di registro e la ricerca di DLL, orologio per le chiamate fallite.

Altri suggerimenti

E 'possibile che il componente richiede piena fiducia e che non sono in esecuzione .NET 4.0. Nelle versioni più vecchie, percorsi di rete non sono concessi piena fiducia a meno che non si modifica manualmente i set di autorizzazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top