Я думаю, что вы можете запрограммировать его самостоятельно. как в коде ниже:
Для вашего Form
используйте код ниже:
Imports System.Net
Public Class frmMain
Private WithEvents WebC As New WebClient
Private updatefilename As String
Private WithEvents updateTimer As New Timer With {.Enabled = True, .Interval = 300000} '300000 is 5 min
Private Sub frmMain_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
CheckUpdatePHP() ' you can use the php method or the normal method
End Sub
Private Sub CheckUpdatePHP() Handles updateTimer.Tick
Dim ServerVer As String = WebC.DownloadString("http://yourdomainname.com/update.php?get=ver")
If Not Application.ProductVersion.Equals(ServerVer) Then
Dim updateURL As String = WebC.DownloadString("http://yourdomainname.com/update.php?get=url")
updatefilename = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".exe"
WebC.DownloadFileAsync(New Uri(updateURL), updatefilename)
End If
End Sub
Private Sub CheckUpdate() 'Handles updateTimer.Tick
Dim ServerInfo As String = WebC.DownloadString("http://yourdomainname.com/version.txt")
Dim Infos As String() = ServerInfo.Split("%split%")
If Not Application.ProductVersion.Equals(Infos(0)) Then
Dim updateURL As String = WebC.DownloadString(Infos(1))
updatefilename = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".exe"
WebC.DownloadFileAsync(New Uri(updateURL), updatefilename)
End If
End Sub
Private Sub WebC_DownloadFileCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles WebC.DownloadFileCompleted
Dim pinfo As New ProcessStartInfo(updatefilename)
pinfo.WindowStyle = ProcessWindowStyle.Hidden
pinfo.CreateNoWindow = True
Process.Start(pinfo)
End
End Sub
End Class
version.txt
должен выглядеть следующим образом:
1.0.0.0%split%http://yourdomainname.com/update.exe
upload.php
, если вы будете использовать метод PHP, следует использовать этот код:
<?php
if(isset($_GET['get'])){
$get = $_GET['get'];
$txt = file_GET_contents("version.txt");
$info = explode("%split%",$txt);
if($get = 'ver'){
echo $info[0];
}elseif($get = 'url'){
echo $info[1];
}
}
?>
Если вы будете использовать PHP method
вы Shoul d удаляем его из вашего кода формы, также для обычного метода вы можете загрузить файл version.txt
и update.exe
в свою учетную запись Dropbox и использовать их.
Не стесняйтесь спрашивать.
Возможно, вы не найдете что-то очень надежное, отчасти потому, что это не так сложно катить. В сущности, все, что вам нужно сделать, это опубликовать RSS-канал версий где-нибудь и периодически проверять его на новые записи. Wix даже включает в себя функциональность в качестве образца. –
Я уже ожидал чего-то подобного, хотя я все же предпочел бы существующее решение, поскольку это очень распространенная задача, о которой я думаю. Можете ли вы связать пример WiX? – Console
Почему вы говорите, что щелчок по экрану прекращен? Даже если бы это было так, это хорошая отправная точка, особенно в среде Wix: https://github.com/wixtoolset/wix4/tree/develop/src/tools/ct –