Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
⭐ Perfo ⭐
Ultra Üye
Katılım
4 Haz 2018
Mesajlar
1,544
Tepki puanı
1,384
Ödüller
10
8 HİZMET YILI
Uygulamaya Güncelleme Getirme

:yazı:

Hepinize merhaba dostlarım. Ben #baXen
Bu konumda sizlere C#'da uygulamaya güncelleme getirmeyi anlatacağım.
Bu yöntem sayesinde yaptığınız uygulamaya güncelleme geldiğinde herkese gönderebilirsiniz.
Fazla söze gerek yok diye düşünüyorum. "Videolar" bölümünde nasıl yapıldığını izleyebilir veya "Kullanımı" bölümünden yazılı anlatım ile yapabilirsiniz.

:video:

Daha açık bir şekilde anlatım ve yazılı anlamayanlar için video;


:kullan:

İlk olarak gerekli olan NuGet'ları indirmemiz gerekiyor. Bunun için "Tools" bölümünden "NuGet Package Manager" sekmesinden "Package Manager Console" seçeneğini seçiyoruz. Alt tarafta açılan konsola ise aşağıda ki kodu giriyoruz.
Kod:
Install-Package HtmlAgilityPack -Version 1.4.6
Ardından gerekli using sınıflarını ekliyoruz.
C#:
using System.IO;
using System.Net;
using HtmlAgilityPack;
Formunuza bir adet timer ve bir adet button ekliyoruz. Eklediğiniz button'un visible özelliğini false yapıyoruz.
Bir adet integer(int) tanımlıyoruz. Bu integer sınıfların dışında bulunsun ki, tüm sınıflarda kullanılabilir olabilsin.
C#:
public int v = 1;
Arından formunuzun kod satırını açıyorsunuz ve aşağıda ki kodları giriyorsunuz.
C#:
timer1.Start();
string hedef = "siteadı.domain/adres_devamı"; //Buraya güncelleme sürümünü kontrol edecek adresi giriyorsunuz.
WebRequest istek = HttpWebRequest.Create(hedef);
WebResponse yanit;
yanit = istek.GetResponse();
StreamReader bilgiler = new StreamReader(yanit.GetResponseStream());
string gelen = bilgiler.ReadToEnd();
int baslangic = gelen.IndexOf("<p>") + 3;
int bitis = gelen.Substring(baslangic).IndexOf("</p>");
string gelenbilgileri = gelen.Substring(baslangic, bitis);
v = Convert.ToInt16(gelenbilgileri);
Bu işlemi yaptığınızda adres bölümünde ki yer neresi ise orada ki adrese şu kodları ekliyoruz.
PHP:
<p>1</p>
Güncelleme getirdiğiniz zaman orada ki "1" yazısını "2, 3, 4" diyerek arttıracaksınız.
Eklediğiniz timer'ın kod sekmesini açıyoruz ve içine şu kodları giriyoruz.
C#:
if (v == 1){}
else{
     button1.Visible = true;
}
Burada sitede ki yazı "1" değil ise eklediğiniz button'un visible özelliğini true yapıyor. Bu sayede güncelleneceği zaman butona tıklayabilirler.
Butona tıkladıklarında ki ise güncelleme yapacak adrese gönderilmesi gerekmektedir.
Bu sebepten aşağıda ki kodu formuzunda ki button'un kod satırına yazacaksınız.
C#:
System.Diagnostics.Process.Start("siteadı.domain/indirilecek_dosya.exe&rar&zip"); //Buraya sitenizde ki hangi dosyayı indirecek ise onun adresini yazıyorsunuz. Bu değişmeyeceği için dikkatli olunuz.
Artık güncelleme özelliği aktiftir. Adres özelliğini dikkatli kullanmanızı öneririm. Değiştirdiğiniz taktirde program siteyi görmeyecek ve hata verecektir.
Bu yüzden önceden bir .exe & .rar uzantılı dosyanızı sitenize yerleştirin. Güncelleme geldiğinde ise sitenizde ki dosyayı aynı isim ile değiştirin.

:not:

Üstteki işlemleri yaptığınızda güncelleme geldiğinde varsayılan tarayıcı ile indirecektir.
Eğer program kendisi indirsin istiyorsanız formunuza bir webBrowser ekliyorsunuz ve kodlarına şunları yazıyorsunuz.
C#:
webBrowser1.Navigate("siteadı.domain/indirilecek_dosya.exe&rar&zip");
Bu sayede ise varsayılan tarayıcı çalışmadan otomatik olarak bilgisayara yeni güncellemeyi indirecektir.​
 
Doomsday is approaching
Ultra Üye
Katılım
8 Şub 2019
Mesajlar
1,709
Çözümler
5
Tepki puanı
684
Ödüller
8
7 HİZMET YILI
Eline sağlık brom , bu gibi konuların devamını beklerim. :thinkie:
Yararlanılır. :) :thugbear:
 
* xάήάx *
Süper Üye
Katılım
15 Şub 2019
Mesajlar
1,014
Çözümler
4
Tepki puanı
459
Ödüller
5
7 HİZMET YILI
Buram buram emek kokuyor, yüreğine sağlık :) Yararlı bir konu
 
Griffin Premium
Katılım
2 Haz 2018
Mesajlar
2,238
Çözümler
4
Tepki puanı
1,101
Ödüller
12
8 HİZMET YILI
buram buram emek kokuyor bende bu konuyu arıyordum sende buldum adamsın reis en iyi ve detaylı anlatan sensin.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst