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

Suppressing reboots

I created an MSI for internally developed code, and am pretty happy with how it works. The application includes a service and some parameters which need to be seen by other programs, so a reboot is included. The reboot works just fine, and provides the reboot with and without the UI. So far, all is good.

I turned the MSI over to the Electronic Software Distribution (ESD) team, and they say my reboot doesn't work. Their process defers reboots until the end of all installations, and they use this process with multiple vendor MSIs. They explained that the deferred reboot provides a special code (3010) so their system knows the reboot is needed. For my MSI, the reboot does not occur (good) but the deferred reboot code is not given (bad). The MSI exits with a standard 0 and no reboot occurs. I attached the verbose MSI log for reference.

I checked the ESD process and see that what they do is set REBOOT=REALLYSUPPRESS. I'm not sure what that is supposed to do, but whatever it does to other MSIs, it is doing more than that to mine. Other MSIs needing reboots respond with 3010, mine responds with 0. Is there a way to set an MSI to reboot where it will do nothing if REBOOT=REALLYSUPPRESS? Or maybe I need to ask the reverse question. What extra step do I need to make my reboot give the magical 3010 code?

Thanks in advance.

Norman
(2) Replies
nvadnais wrote:
I created an MSI for internally developed code, and am pretty happy with how it works. The application includes a service and some parameters which need to be seen by other programs, so a reboot is included. The reboot works just fine, and provides the reboot with and without the UI. So far, all is good.

I turned the MSI over to the Electronic Software Distribution (ESD) team, and they say my reboot doesn't work. Their process defers reboots until the end of all installations, and they use this process with multiple vendor MSIs. They explained that the deferred reboot provides a special code (3010) so their system knows the reboot is needed. For my MSI, the reboot does not occur (good) but the deferred reboot code is not given (bad). The MSI exits with a standard 0 and no reboot occurs. I attached the verbose MSI log for reference.

I checked the ESD process and see that what they do is set REBOOT=REALLYSUPPRESS. I'm not sure what that is supposed to do, but whatever it does to other MSIs, it is doing more than that to mine. Other MSIs needing reboots respond with 3010, mine responds with 0. Is there a way to set an MSI to reboot where it will do nothing if REBOOT=REALLYSUPPRESS? Or maybe I need to ask the reverse question. What extra step do I need to make my reboot give the magical 3010 code?

Thanks in advance.

Norman


Hi There,

I don't actually see anything in the logfile that's requesting a reboot, so this might make sense considering. Is the ScheduleReboot action how you're triggering the deferred restart? Because in the log:

Skipping action: ScheduleReboot (condition is false)
We just upgraded from AdminStudio version 9 to 10. I have to get my seat updated to the right version to be able to answer the "What exactly did I do?" question. I went through the on-line help and the training manual we had and just followed steps outlined to request a reboot both with and without a UI (avoiding the "It only reboots with a UI" problem). :confused:

I'll report back once I have the answer.

Norman