Build a Complete Software Packaging Ecosystem with Advanced Installer & PacKit
As an IT professional, I noticed throughout the years how software packaging has evolved from mostly repackaging applications to making them enterprise-ready, to customizing and integrating them into configuration management tools directly. All by applying the repackaging technique only on those exceptional occasions when silent installation is impossible.
This shift in application packaging left uncovered some post-packaging configuration tasks. For that, our developers built a brother of Advanced Installer called PacKit that covers those situations.

In this article, I will guide you on how to build a complete software packaging ecosystem, using Advanced Installer, PacKit, and some additional configurations based on my current workflow.
Ecosystem overview
To set up a fully functional software packaging environment, I recommend the following components:
- Virtual machines (VMs)
- Advanced Installer Architect Edition
- PacKit
- Additional tools: PSexec, Notepad++
With this ecosystem, you can do the following:
- Analyze the initial software package be it EXE MSI or MSIX
- Create a software package installer from scratch
- Edit your MSI/MSIX packages
- Make wrappers be it nested installers (msi or exe with MSIs or EXEs inside) or PSADT wrappers
- Perform safe and secure local tests
- Automatically import Winget apps with silent install parameters
- Distribute and upload your application to SCCM and Intune
Setting Up Your Virtual machines
A good software packaging environment starts with a well-configured virtual machine. Why? Because VMs (Virtual Machines) can be configured with certain specifications so they allow you to create controlled environments (limited by the physical machine) and can be reverted to a clean checkpoint.
I personally use Hyper-V, in case your physical machine does not support hyper-virtualization, you can choose VMware or other virtualization technologies.
Recommended Virtual Machine Setup
I always start with two dedicated virtual machines:
- Repackaging VM
- Testing VM

Repackaging VM
On this virtual machine, I installed Advanced Installer. This virtual machine will be used for the Advanced Repackager feature, in situations when the original setup installer does not support silent install.
How does repackaging work?
Briefly, the Repackager helps you convert your application installer into a new packaging format (MSI, MSIX/APPX, APP-V).
The repackaging operation consists of taking an initial snapshot of the system before you install your application and one after, then the results are imported into an Advanced Installer project where you can begin to customize the new installer.

Testing VM
The second virtual machine - used for testing - should be as clean as possible with no other tools installed except pstools. Using PsTools I can simulate system context installations of my software package, just like SCCM or Intune will do.
Learn more about the installation testing process in The Installer Testing Guide.

Note: For applications meant to display interactive messages in Intune, you need to use ServiceUi as a declared install parameter even though in the test environment (using PsTools) the messages will be displayed without the use of the ServiceUI.exe. Learn more about ServiceUI.exe How to display interactive user messages during an Intune system deployment.
Advanced Installer (Architect edition)
On my physical machine, I also installed the Advanced Installer (architect edition).
This will allow me to create projects and installers from scratch. Later on, I can build them according to my needs (EXE MSI MSIX, APP-V)

Edit with Advanced Installer
Among the multiple features Advanced Installer has to offer, one handy feature is the Edit with Advanced Installer which allows me to view the contents of an MSI and perform quick actions on it.
Cautions: any modifications of a vendor MSI should be done via an MST which will be called during the installation process. It’s the most used feature for me.

Run in VM
Another handy feature is the “Run in VM”.
Once I finish building a setup package on my physical machine, I can click the Run in VM button from the advanced installer, and it will initiate the installation on my testing virtual machine.
This way, I can ensure my physical system stays separate and I don’t risk the chance of having installers leftovers from multiple installations or worse, a corrupt system in case there was something wrong with the software package.

Learn more on Advanced installer feature list and MSI Packaging Essentials, Advanced MSI Packaging, MSIX Fundamentals - all free training and certification programs powered by Advanced Installer and get certified.
PacKit - The Link Between Application Packaging & Application Deployment.
I installed PacKit on my physical machine because it is not required in the VM. It represents

PacKit is a user-centric, Windows-based tool designed for centralized post-packaging configuration and deployment. It streamlines the process of managing application packages, integrating seamlessly with tools like Intune and MECM.
Important: As mentioned at the beginning, if I have applications that don’t require repackaging or any other modifications, I can use PacKit directly to publish applications in SCCM on Intune.
Now, if I have customizations to do and I don’t want to use Advanced Installer, I can opt for wrapping apps with PSADT which is integrated into the tool. PacKit will open the PS1 script in my favorite editor (in my case, Notepad++ mentioned at the beginning). Ultimately, it can also generate the .intunewin file required for win32 application times for Intune.
What I like about PacKit, is the fact that I can see all my application packages as a database, and I can also import packages created with Advanced Installer.

Final Thoughts
This packaging ecosystem has significantly improved my workflow, saving time and ensuring high-quality application deployment.
How does your packaging ecosystem compare?
Are there any tools or configurations you’d recommend?
Drop a comment below—I’d love to hear your thoughts!