Domanda

Ho un'intera directory di DLL di cui ho bisogno per registrarmi al GAC.Vorrei evitare di registrare esplicitamente ciascun file, ma sembra che gacutil non abbia l'opzione "directory di registrazione".Qualcuno ha una soluzione veloce/semplice?

È stato utile?

Soluzione

GACUTIL non registra DLL, non nel senso "COM".A differenza di COM, GACUTIL copia il file in una directory opaca in %SYSTEMROOT%\assembly ed è da lì che vengono eseguiti.Non avrebbe senso chiedere a GACUTIL "registra una cartella" (non che tu possa farlo neanche con RegSvr32).

È possibile utilizzare un comando batch FOR come:

FOR %a IN (C:\MyFolderWithAssemblies\*.dll) DO GACUTIL /i %a

Se lo inserisci in un file batch, devi sostituire %a con %%a

Altri suggerimenti

Ecco lo script che inseriresti in un file batch per registrare tutti i file nella directory corrente con Gacutil.Non è necessario inserirlo in un file batch (puoi semplicemente copiarlo/incollarlo su un prompt dei comandi) per farlo.

FOR %1 IN (*) DO Gacutil /i %1

Modificare:Bah, scusa, ho fatto tardi.Non avevo visto il post precedente quando ho postato il mio.

Utilizzo

gacutil /il YourPathTo_A_TextFile.txt

cambia, se hai DLL in più cartelle diverse.Altrimenti vai con il for ... in ciclo menzionato da Euro.

Il file di testo dovrebbe contenere un elenco di percorsi di assembly (un percorso per riga) da installare.I percorsi possono anche essere cartelle diverse in tutto il sistema.Esegui la riga di comando come amministratore!

Ecco un esempio di YourPathTo_A_TextFile.txt:

C:\... Microsoft.Practices.EnterpriseLibrary.Common.dll C:\... Microsoft.Practices.EnterpriseLibrary.Configuration.Design.HostAdapter.dll C:\... Microsoft.Practices.EnterpriseLibrary.Configuration.Design.HostAdapterV5.dll C:\... Microsoft.Practices.EnterpriseLibrary.Configuration.DesignTime.dll C:\... Microsoft.Practices.EnterpriseLibrary.Configuration.EnvironmentalOverrides.dll C:\... Microsoft.Practices.EnterpriseLibrary.Data.dll

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