我認爲你可以自己編碼。就像下面的代碼:
爲了您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
you shoul d可以從表格代碼中刪除它,也可以使用常規方法將version.txt
文件和update.exe
上傳到您的保管箱帳戶並使用它們。
隨意問。
你可能不會找到非常可靠的東西,部分原因是因爲它不是很難推出自己的東西。實質上,您需要做的是發佈某個版本的RSS源,並定期檢查新條目。 Wix甚至包括作爲示例的功能。 – 2014-09-08 07:20:41
我已經期待這樣的事情,雖然我仍然更喜歡現有的解決方案,因爲這是我認爲的一個非常常見的任務。你能鏈接WiX例子嗎? – Console 2014-09-08 07:27:27
你爲什麼說點擊通過停止?即使是這樣,這是一個很好的起點,尤其是在Wix環境中:https://github.com/wixtoolset/wix4/tree/develop/src/tools/ct – 2014-09-09 05:58:44