I added a custom class to the Updater "after files downloaded" or "after program updated". The custom class doesn't always run if it updated files.

Look at the errors.log in the JExpress subdirectory of your application's directory. If the updater gets any errors, it records the errors in this file and then skips all other custom classes. If you set the updater to update every time, then the older version of your app is automatically launched.
Applies to
custom class updater

All information is provided "as is", without warranty of any kind, and subject to change. DeNova uses its best efforts to provide complete and accurate information. DeNova disclaims all warranties, either explicit or implied, including the warranties of merchantability and fitness for a particular purpose. In no event shall DeNova or its suppliers be liable for any damages whatsoever, including direct, indirect, incidental, consequential, loss of business profits or special damages, even if DeNova or its suppliers have been advised of the possibility of such damages.