SoftwareUpdater is an executable to update other software.
The PreferredLanguage property needs to be set to the language that is wanted. See the languages subfolder in the execution location (to add new languages) and the language manager: https://github.com/SeppPenner/CSharpLanguageManager
<PreferredLanguage>Deutsch</PreferredLanguage>
The PathToLatestVersion property needs to be set to the path to where the newest executable is located, e.g. a server share, etc.
<PathToLatestVersion>C:\Users\asdf\Desktop\Test</PathToLatestVersion>
The MainExecutable property needs to be set to the application's main executable. StartAgain means that after the update the executable is restarted.
<MainExecutable>
<FileName>MainExecutable.exe</FileName>
<StartAgain>true</StartAgain>
</MainExecutable>
The files property contains all other files that should be updated and if they should be restarted after the update.
<Files>
<FileModel>
<FileName>SecondExe.exe</FileName>
<StartAgain>false</StartAgain>
</FileModel>
<FileModel>
<FileName>Changelog.txt</FileName>
<StartAgain>true</StartAgain>
</FileModel>
</Files>
The config file needs to be named "UpdateConfig.xml".
<?xml version="1.0"?>
<Config>
<PreferredLanguage>Deutsch</PreferredLanguage>
<PathToLatestVersion>C:\Users\asdf\Desktop\Test</PathToLatestVersion>
<MainExecutable>
<FileName>MainExecutable.exe</FileName>
<StartAgain>true</StartAgain>
</MainExecutable>
<Files>
<FileModel>
<FileName>SecondExe.exe</FileName>
<StartAgain>false</StartAgain>
</FileModel>
<FileModel>
<FileName>Changelog.txt</FileName>
<StartAgain>true</StartAgain>
</FileModel>
</Files>
</Config>
The config file needs to be named "UpdateConfig.xml".
<?xml version="1.0"?>
<Config>
<PathToLatestVersion>C:\Users\asdf\Desktop\Test</PathToLatestVersion>
<MainExecutable>
<FileName>MainExecutable.exe</FileName>
<StartAgain>true</StartAgain>
</MainExecutable>
<Files>
<FileModel>
<FileName>SecondExe.exe</FileName>
<StartAgain>false</StartAgain>
</FileModel>
<FileModel>
<FileName>Changelog.txt</FileName>
<StartAgain>true</StartAgain>
</FileModel>
</Files>
</Config>
An example project can be found here. A test setup can be found here.
If the executable is located under C:\Program Files or C:\Program Files (x86), ADMIN RIGHTS will be needed to use the updater properly. Otherwise it will not perform an update.
See the Changelog.