Hi Mark,
the Microsoft C++ 2017 redistributable returned the magic "3010" exit code (because it had to replace "in-use" system components). That means, a reboot was required.
The redistributable did not reboot the system, but Line 149 requested it (see attached screenshot). If you would like to disable a required reboot process, just comment-out Lines 148-150. But please note that you do not have a valid VC++ 2017 installation if you suppress the reboot.
What you can do is to store the required reboot status and then ask for a reboot at the end of your installation. In this case, do not start your own app from the install.
Does this help?
Friedrich