Domanda

Sto cercando di aggiungere una dll .NET 4.0 al GAC. Sto tentando di fare questo perché è pubblicata da una società terza parte sia come 32 e 64 bit dll che devo utilizzare da diverse applicazioni su diverse piattaforme in entrambi i formati.

In ogni caso, sto avendo difficoltà si registra questa dll nella GAC ??su un 2008 ambiente Windows Server.

Ho provato a copiare gacutil.exe (e sostenendo file) trova in "C: \ Program Files (x86) \ Microsoft SDK \ Windows \ v7.0A \ bin \ netfx 4.0 Strumenti" sulla mia macchina locale al "C : \ Windows \ Microsoft.NET \ Framework \ v4.0.30319" cartella sul server di produzione di destinazione per i suggerimenti trovati qui .

Ho poi cercato di copiarli. "C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319"

L'esecuzione da entrambe le posizioni indicate corretta installazione. E in effetti, la registrazione appare successo:

  • C: \ Windows \ Microsoft.NET \ assembly \ GAC_64 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll
  • C: \ Windows \ Microsoft.NET \ assembly \ GAC_32 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll

Tuttavia, l'esecuzione di una console app che si riferisce al (64bit) Versione degli errori dll con il seguente messaggio:

  

System.IO.FileNotFoundException: Could   Non file di caricamento o di montaggio   'ChilkatDotNet4.dll' o uno dei suoi   dipendenze. Il modulo specificato   non può essere trovato. Nome del file:   'ChilkatDotNet4.dll'

Quindi, ora ho creato manualmente le seguenti voci GAC utilizzando mkdir e copiare da un prompt dei comandi (che può o non può in realtà il lavoro non ho idea di che cosa c'è di così speciale gacutil.exe.):

  • C: \ Windows \ Microsoft.NET \ assembly \ GAC_MSIL \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll (utilizzando la versione a 64 bit del dll)
  • C: \ Windows \ assembly \ GAC_64 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll
  • C: \ Windows \ assembly \ GAC_32 \ ChilkatDotNet4 \ v4.0_9.0.8.0__eb5fc1fc52ef09bd \ ChilkatDotNet4.dll

Dopo ogni "Installa" della dll, ho provato e ha ricevuto lo stesso errore. Tutte le idee benvenuto!


Modifica : la questione GAC di cui sopra non può in realtà essere il colpevole. Risulta, anche quando creo un nuovo progetto di console app e aggiungere il dll direttamente (in modo che vive nel cestino), non riesco ancora a eseguirlo sul sever. Inoltre, ho notato che le applicazioni console sono creati mira il profilo NET 4.0 client piuttosto che il .NET Framework 4. Quando provo a farlo funzionare mira il profilo del cliente, sembra che nessuna delle System.Web * librerie sono disponibili . Tuttavia, ho provato a fare funzionare un molto semplice Test App mira entrambi e nessuno dei due avrebbe eseguito sul server, mentre fa riferimento il cattivo dll.

C'è un particolare tipo di installazione che doveva accadere per eseguire NET 4.0 Console Apps?

È stato utile?

Soluzione

Per chiunque altro che possono avere problemi con questo in futuro. Non è stato un problema generalizzato con il modo in cui mi è stato registrare il dll nella GAC ??o come mi riferivo ad esso dai miei progetti.

ChilkatDotNet4.dll (e le altre versioni sono sicuro) è stato costruito in Visual C ++. Quindi, il server è in corso la distribuzione a deve avere Visual C ++ Runtime installato per l'architettura del processore appropriata.

Per il 2010 (NET 4.0):

Se si sta eseguendo un app x86 su una piattaforma a 64 bit. Assicurati di segnare il pool di applicazioni con "Attiva applicazioni a 32 bit" = true.

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