I. Problems Encountered during online upgrade
Problems encountered during automatic software upgrade programming include:
1. Where to update? (Where)
This is a problem where to update the software. If a software has a large number of users, you may need to consider the download load balancing problem. Or the response speed and download speed of the server. Sometimes our Update Server may even crash due to various reasons. How can this problem be solved? (This article does not deal with this situation for the time being, and only raises the question)
2. When to update? (When)
This is an update time policy issue. When to update? When the program starts (before our program runs )? When the program is running? Or do I check when the program is closed? In addition, do I perform a check every time I run it, or do I perform a check after a period of time (such as one month?
3. How to update? (How)
This is a question about how to control updates through programming. Download all files and replace all files on the user end? Or just update some files? How do I check the items that need to be updated, but what does not need to be updated?
4. Version Control? (Version Control)
How can multiple versions coexist? Or is the update of user A on a computer not affecting user B's use?
5. security problems? (Security)
How can we avoid this situation if the Update Server is counterfeited or maliciously modified, deleted, or even put virus files for your users to download?
II. Implementation principle (The following is to be continued. I am busy today and will post it later)
Iii. Implementation
4. Download source code