Hi,
I would like to get a clarification on what I consider a breaking change in APPDIR synchronization between older and newer AI versions. We have many installer projects created in 19.2 with a certain synchronization setup. In order to avoid merge conflicts we use the sync option to not store files in the installer project. With one exception, the main executable which is required for Windows service registration. In 19.2 I achieve this by leaving only the main executable in the synced folder, turning on the sync in the AI project, having that single file loaded, and subsequently changing the sync settings to not save files in the project. The main executable file stays in the project. I can use it to create a Windows service and possibly more. If another dev needs to adjust the project, they can open it, do the changes and close it with no issues.
However, this stopped working at some point. We try to use the latest AI version and now when I open such a project in 21.7.1 or 22.0, it shows this in the Output panel.
- Skipped synchronization of APPDIR with <some path> because of Do not save files in project option.
- The following service - install operations: <service name> were deleted because their file APPDIR\<main executable>.exe was deleted.
This happens even if the main executable exists in the synced folder. Now if I do changes to this project and save it, I loose the Windows service registration. There's no way to make it work except fixing it in the diff tool before committing.
Is this intentional change in the behavior? If not, it's a bug. If yes, what are my options to achieve this behavior? I do not wish to have bloated AIP files with hundreds of synced files.
Actually, we are building the installers using the latest AI in our CI pipeline anyway. But from a command line. Funnily enough, there are the same output messages in the build log but the final installer turns out just fine because the main executable really exists in the synced folder.