public void CheckUpdate()
{
try
{
CampahStatus.Instance.Status = "Checking for Updates...";
var req = (HttpWebRequest)WebRequest.Create(UpdateConstants.UpdateUrl+"update.txt");
var response = (HttpWebResponse)req.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
var cu = new StreamReader(response.GetResponseStream(), System.Text.Encoding.GetEncoding("utf-8"));
String[] latestversion = cu.ReadLine().Split('.');
String[] currentverstion = CampahStatus.Instance.Version.Split('.');
cu.Close();
if (currentverstion.Length != latestversion.Length)
{
CampahStatus.Instance.Status = "A problem occured while checking update, canceling update";
return;
}
for (int i = 0; i < latestversion.Length; i++)
{
int subverL;
int subverC;
int.TryParse(latestversion[i], out subverL);
int.TryParse(currentverstion[i], out subverC);
if (subverL > subverC)
{
OpenUpdater(cu);
break;
}
}
CampahStatus.Instance.Status = "No update needed";
}
else
{
CampahStatus.Instance.Status = "Could not contact update server";
}
}
catch (WebException)
{
CampahStatus.Instance.Status = "Could not contact update server";
}
}