0

Code snip:

      <Component Id ="zyx" Guid="{4820d7d5-30a0-448c-a80e-83609c92f235}">
        <File Id="DLLGAC" Assembly=".net" KeyPath="yes" Source="folder\pqr.xyz.dll"/>
      </Component>

I'm trying to upgrade older version of assembly using above code but getting error

skipping installation of assembly component: {4820d7d5-30a0-448c-a80e-83609c92f235} since the assembly already exists
Peter Cordes
  • 328,167
  • 45
  • 605
  • 847
Austin
  • 29
  • 6

2 Answers2

0

From my experience version of your library must be higher than installed library. And there's no option to copy with overwrite. So if library is yours - change version of library to higher.

If not: In my case someone added to installer modified 3rd party with some higher version and it was impossible to replace it with official new version. Only way to solve it was custom action with simple File.Copy with overwrite.

How to create custom actions

ba-a-aton
  • 574
  • 1
  • 4
  • 14
  • Version number is higher then already installed but still facing the issue – Austin Mar 09 '21 at 17:20
  • Bad. Unfortunately, sometimes wix works strange (or only legends can get how it should work)). But you still can use custom actions. As for me - it's easier to control everything from c# code. – ba-a-aton Mar 09 '21 at 18:32
0
      <Component Id="zyx" Guid="{BB23E1A4-9270-41AA-9266-4D15506E1C63}" Win64="yes">
        <File Id="DLLGAC" Source="folder\pqr.xyz.dlll" KeyPath="yes" Assembly=".net"/>
      </Component>

After changing the code format it's working which is strange but it works :)

Austin
  • 29
  • 6