A system and method are disclosed for remotely updating a software application
on both thin client and non-thin client workstations while the software application
is open on the client workstation. The system includes a server-side module and
a client-side module. The method involves the server receiving the new software
application and then either automatically pushing it onto each client or receiving
a request from a registered client to have the new software program installed.
The state of the user's application may optionally be saved during the install
and restored after the automatic upgrading and installing of the segment of the
software application. After the new software application has been successfully
installed, the cache from the previous application is invalidated. Control is then
transferred back to the client.