Post Install Step of NI Package Does Not Get Triggered When Deployed Through SystemLink

Updated Mar 5, 2020

Reported In

Software

  • NI Package Builder 19.1
  • SystemLink 19.0
  • Package Manager 19.6

Issue Details

I have built an NI Package (.nipkg file) using NI Package Builder. The package is configured to launch a .exe post the install of package payload. If the package is installed manually by running the .nipkg installation on the target system, the post install exe is launched and the GUI visible, as expected.

However, if the same package is deployed to a target machine through SystemLink, the post install exe does not get triggered/executed.
 

Solution

The post install exe does get triggered - just that the GUI will not launch. You can verify this by checking in Task Manager under the Details tab and verify that the post install exe is running.

This is expected behavior and is due to the SystemLink Client running as a Window service user account. Thus, while it is still possible to launch the exe and it will run in the background, the GUI will not be accessible.

 

Additional Information

A service account is a user account that is created explicitly to provide a security context for services running on Windows Server operating systems. The security context determines the service's ability to access local and network resources. The Windows operating systems rely on services to run various features. These services can be configured through the applications, the Services snap-in, or Task Manager, or by using Windows PowerShell.

Thus, this is limitation of the Windows. One possible workaround is to configure the post install exe as a Windows Startup Application - post the installation of package payload, once the system restarts, our required exe can now execute.