ACE23: Duplicate Files with Different Sizes, Versions, or Languages
AdminStudio 2022 | 23.0 | Application Manager
Edition:This test is included in the AdminStudio Professional and Enterprise Editions.
ACE23 identifies file duplication between source and target packages. ACE23 checks whether files with the same name and destination directory have the same size, version, and language when comparing a source package against a target package. If a file with the same name and destination directory is found in both the source and target packages, but the file has a different size, version, or language, ACE23 fails.
Test Group/Test Category
Application Conflicts/Package Data Conflicts/Files
Severity
Warning
Message
The file [EXECUTABLE_FILENAME, SIZE, VERSION, LANGUAGE] installed to location [PATHNAME] by component [COMPONENT1] in Package [PACKAGE1] conflicts with the same file in component [COMPONENT2] in Package [PACKAGE2].
Background
If a file with the same name and destination directory is found in both the source and target package (and, in the case of an MSI package comparison, the packages have different ComponentId values), but the file has a different size, version, or language, ACE23 fails. If the source and target packages are MSI packages and they have the same ComponentId value, no error is reported.
Resolution
This issue requires a manual resolution. Investigate the issue and decide which file has precedence. If the source file has precedence over the target file, remove the target file. Use one of the following solutions.
Manual Fix: Solution 1
This fix involves replacing the file in the source package with the same file that is in the target package.
To replace the file in the source package with the same file that is in the target package:
1. | Retrieve a copy of the file from the operating system in which the target package was taken. |
2. | Open a transform file or MSI package in InstallShield Editor. |
3. | In the View List under Application Data, click Files and Folders. |
4. | Find the file that is listed in the message, and replace it with the one that you retrieved from the operating system. |
5. | On the File menu, click Save As, and save the changes as a Windows Installer Transform (.mst) file. |
6. | Open Application Catalog and reimport this package with its transform file into your Application Catalog, and then use the Conflict Wizard to check it against ACE23 again. |
Manual Fix Solution 2
This fix involves changing the destination of the component that contains the file in the target package.
To change the destination of the component that contains the file in the target package:
1. | Open a transform file or MSI package in InstallShield Editor. |
2. | In the View List under Organization, click Components. |
3. | In the Components explorer, find the component that is listed in the message. |
4. | In the Component Code setting, change the value to match the component code (ComponentId) of the component in the other project. |
To quickly find the component name, open the File table in the Direct Editor view and search for the file name. Then, check the Component column for the component name.
5. | In the Destination setting, change the value to a new destination. |
Changing the destination may cause the application to break. Before changing the destination, verify that the application will still work with the new destination.
6. | On the File menu, click Save As, and save the changes as a Windows Installer Transform (.mst) file. |
7. | Open Application Catalog and reimport this package with its transform file into your Application Catalog, and then use the Conflict Wizard to check it against ACE23 again. |