. Ho un programma di installazione WiX che deve installare nuovi bit per Interop.FOOBARLib.DLL nel GAC. Il problema è che il numero di versione è lo stesso della vecchia versione e che i nuovi bit non vengono scritti sul GAC in un aggiornamento. Eseguiamo l'azione RemoveExistingProducts dopo l'azione InstallFinalize.Forza il programma di installazione per aggiornare un file in GAC indipendentemente dal numero di versione
Non è possibile spostare l'azione RemoveExistingProducts in precedenza nell'installazione.
Il componente foobar.dll non è il mio componente, quindi non è possibile incrementare la versione della libreria dei tipi (il che farebbe aumentare la versione dell'interop e tutti questi problemi scompariranno).
C'è un modo per forzare il file da aggiornare nel GAC anche se la versione è la stessa? Voglio un comportamento simile a "gacutil.exe/f".
Il componente si presenta come:
<Component Id="Interop.FOOBARLib.dll" Guid="{4E0C173E-34DF-4249-A3A6-5530047FA65B}" >
<File Id="Interop. FOOBARLib.dll" Name="Interop.FOOBARLib.dll" KeyPath="yes" Assembly=".net"/>
</Component>
Ecco come ho risolto. Richiesto anche il parametro/sysarray. – Mike