I have application A.
In the [Run]
section I have two entries:
Filename: "{dotnet40}\regasm.exe"; \
Parameters: "MSAToolsLibrary_x86.dll /codebase"; \
WorkingDir: "{app}"; Flags: runhidden
Filename: "{dotnet4064}\regasm.exe"; \
Parameters: "MSAToolsLibrary_x64.dll /codebase"; \
WorkingDir: "{app}"; Flags: runhidden; Check: IsWin64
In the [UninstallRun]
I have these two entries:
Filename: {dotnet40}\regasm.exe; \
Parameters: /u MSAToolsLibrary_x86.dll; \
WorkingDir: {app}; Flags: runhidden; \
RunOnceId: "Unregister MSA Tools Library (32 bit)";
Filename: {dotnet4064}\regasm.exe; \
Parameters: /u MSAToolsLibrary_x64.dll; \
WorkingDir: {app}; Flags: runhidden; \
RunOnceId: "Unregister MSA Tools Library (64 bit)"; Check: IsWin64;
Now, I have application B and I want it to use the same DLL. I understand that it is safe enough to simply perform the [Run]
entry again. It just means it will point to the application B copy of the DLL. That should be alright.
My concern is about uninstalling. If you have both installed, and then uninstall just one, then the other is still using the DLL so it needs to still be registered, but maybe re-registered to the other apps location and vice versa.
I don't know how to go about this.