cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Azmaeus
Level 6

InstallScript to update ActionData records

I have ActionText for my Custom Actions, but would like to update the ActionData (the detailed action text, for example the Standard Action MoveFile has a template "File: [1], Directory: [9], Size: [6]"). I have searched up-and-down, and the closest I've found is in https://resources.flexera.com/web/media/documents/setup_progress_0506.pdf on the last page, under "Additional Notes" the first point indicates that in the Windows Installer help library there's details on how to get the Custom Action to communicate with the running installation to provide this information. I did find in the Windows Installer help library information on updating the progress bar ticks, but I couldn't figure out how to provide ActionData Text.

Ultimately the issue I'm faced with is that on uninstall the installer checks for handles in-use before stopping the services and pops-up a warning that the system will require a reboot after the uninstall completes. The best solution I've found is to stop the services before this check occurs. I have the Action Text indicate that the services are being stopped (which I've created an InstallScript to do), but was hoping to indicate which service is currently being stopped, because it can take a few minutes altogether, so it would be nice to show to the user that different services are being stopped and the installer isn't stuck. If anyone knows how to prevent the warning, or reorder the built-in stop-service feature to before the check happens (and a start-service event in case of a rollback) I'd be very much open to it.

Thanks!

Labels (1)
0 Kudos
(1) Reply
ch_eng2
Level 6

In our InstallScript Only projects that remove Windows services, we manually run ServiceStopService as well as ServiceRemoveService calls at the end of OnMaintUIBefore so the services get stopped and removed before the built-in InstallShield uninstall code runs.  We display a simple

SdShowMsg( "Service XYZ Stopping...", TRUE );

message while the service is being uninstalled so the user knows what the hold-up is.  (Don't forget the corresponding SdShowMsg( "Service XYZ Stopping...", FALSE ); afterward).

HTH

0 Kudos