I've written a Python application that reads in some spreadsheets, performs calculations and makes charts from the data, and then exports a PDF file containing the charts. After the PDF is generated and saved to the file system, it automatically opens in your chosen PDF viewer. I use os.startfile(absolute/path/to/file.pdf) to do this.
Now when I run this program directly by by using "python app.py", everything works as expected. Even after using PyInstaller to convert it into an .exe, everything works as expected. However, after using InstallForge to convert the generated .exe and supporting files into a frozen installer, and then installing the application using the installer, something weird happens that prevents the app from opening the PDF properly. When I run the app and export the PDF, the PDF is generated properly, but it doesn't open.
Looking further into the issue, I opened Task Manager to see what might be happening. When running the app via Python or via the PyInstaller version, it opens Acrobat as its own separate application, as expected. But when running the version installed via the InstallForge installer, it opens 2 instances of Adobe Acrobat as subprocesses of my application:
In fact, even after I close the application, these subprocesses stay alive as background processes, and prevent Acrobat from launching properly at all until I manually kill these subprocesses from Task Manager.
I have no idea what is happening in the InstallForge process that is making os.startfile() behave so strangely. Any help is appreciated!
