08 December 2016

Projeye Setup Oluşturma

Öncelikle bir adet örnek proje oluşturalım. Bir formumuz olsun bir adet TextBox ve Buton ekleyelim örneğin. Şimdi bu uygulamayı bilgisayarımıza kuracak setup dosyasını oluşturalım. Bunun için ilk önce Solution’a bir adet Setup projesi ekleyeceğiz. (Other Project Types –> VS Installer –> Setup Project)

3 adet dosyanın oluştuğunu görebiliriz: Application Folder, User’s Desktop, User’s Programs Menu

  • Application Folder – Uygulamanın kurulacağı klasörü belirler. Default program Files’dır.
  • User’s Desktop – Kullanıcının masaüstüne eklenecek kısayolu burada belirliyoruz.
  • User’s Programs Menu – Kullanıcının menüsüne eklenecekleri belirliyoruz, örneğin uninstall gibi.

Öncelikle, Application Folder sağ tıklayalım.
Add –> Project Output –>Primary output –> ok

Daha sonra User’s Desktop sağ tıklayalım.
Create new shortcut –> App Folder —> Primary output seçelim.
Application folder’e bir adet icon ekleyelim (.ico). Daha sonra oluşturduğumuz kısayolun Properties penceresinden icon özelliğini seçerek ikonumuzu kısayola vereceğiz.

Son olarak da User’s Programs Menu’den sağ tıklayarak Bir klasör ekleyelim, içine 2 adet kısayol ekleyelim. İkonu aynı şekilde bu kısayollara bağlayalım.

Oluşturduğumuz bu kısayollara Argüman bağlamamız gerekir. Örneğin uninstall kısayoluna tıklayıp Properties penceresinden arguments yazalım:

/u=[ProductCode]

Şimdi programı uninstall etmek için msiexec.exe’yi çalıştırmamız için gerekli kodları yazacağız.

Program.cs dosyamıza bu kodları yazalım.

static void Main(string[] args)
 {
 if (args.Length > 0)
 {
 string arg = args[0].Substring(0, 2).ToLower();
 if (arg == "/u")
 {
 string[] codes = args[0].Split('=');
 string productCode = codes[1];
 string adres = Environment.GetFolderPath(Environment.SpecialFolder.System);
 Process p = new Process();
 p.StartInfo.FileName = string.Concat(adres, "\\msiexec.exe");
 p.StartInfo.Arguments = string.Concat("/i", productCode);
 p.Start();

 }
 }
 else
 {
 Application.EnableVisualStyles();
 Application.SetCompatibleTextRenderingDefault(false);
 Application.Run(new Form1());
 }

 }

Yukarıdaki kodda “/i” yazarsak setupta repair ve remove, “/x” yazarsak sadece remove seçeneği çıkacak.

Setup dosyasının özelliklerini Setup User Interface Editor, Custom Actions, Launch Conditions pencerelerinden ayarlayabiliriz.

Artık uygulamamızı bilgisayara kurabiliriz…

Comments

  1. İyi günler, Umarım yorumuma cevap verirsiniz 🙁 Projemin setupını oluşturduktan sonra herhangi bi bilgisayarda kurulum yaparken kurulum aşamasında bilgisayar adı, Ip adresi gibi bilgilerin kullanıcıdan istemesini istiyorum. Kullanıcı bu bilgileri girdikten sonra kurulumu gerçekleştirebilsin. ve program çalıştırıldığında Kullanıcnın girdiği bu bilgiler programda kullanılacaktır. Bunu nasıl sağlayabilirim. Lütfen Yardımcı olun 🙁

  2. güzel bir yazı olmuş.eline sağlık.benim de bu konuyla alakalı bir yazım mevcut.

    http://erhanncetinn.blogspot.com/2010/11/c-ile-setup-olusturma.html