Auto updater for c# apps via GitHub repositories
If you want to auto update your program, but don't know how or you don't have money to pay for server to host your files this is just right for you. GitHub hosts files for project so why not use that service?
How does it work?
When program starts it looks for file named Version.txt both on GitHub and in local directory. It compares version numbers and notifies user that there is new update available along with change log description. Then downloads Update.zip file to temporary directory and extracts it. In that file there is Instructions.txt which guides Auto Updater to know which files to delete, move, copy, paste, create.
How to use?
Creating Version.txt file:
- First row is version number like 1.2.3.
- Second row is change log description.
- Upload file to your GitHub project or server.
* Version numbers aren't numbers, but strings so checking is done if strings are same.
Creating Instructions.txt file:
Files that are extracted from Update.zip go to "tmp" folder.
Add few instructions to list and save it.
Example
Instruction.instructions.Add(new Instruction(InstructionType.delete, "TestDummy.exe"));
Instruction.instructions.Add(new Instruction(InstructionType.move, "tmp/TestDummy.exe", "TestDummy.exe"));
// creates Instructions.txt file
Instruction.Save();
Uploading update to server/GitHub
Zip up files along with Instructions.txt to a file named Update.zip and upload it.
In example that I have included it replaces main application with updated one.
Programming language: c#, windows forms
Project: https://github.com/Stock84-dev/Auto-Updater
Posted on Utopian.io - Rewarding Open Source Contributors
Hey @stock84 I am @utopian-io. I have just upvoted you!
Achievements
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x
Congratulations @stock84! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
Award for the number of upvotes
Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here
If you no longer want to receive notifications, reply to this comment with the word
STOP
Your contribution cannot be approved yet.
It seems it's an example of auto-updating mechanism for c# apps via github repositories. If you indicate that in the title, that would be better for readers.
Please edit the post's title via utopian.io and reply this comment when you're done.
You can contact us on Discord.
[utopian-moderator]
Thanks, title changed.
Thank you for the contribution. It has been approved.
You can contact us on Discord.
[utopian-moderator]