Setup yapma ve diğer sorunlar

Başlatan Ramiz, 17 Kasım 2013, 11:30:57

Ramiz

Hepimiz mühendis, tekniker, teknisyen ve ya bu işlerle uğraşan delileriz :) Bizler bir pc yazılımına taklalar attırıp, onu alt-üst edecek kapasitedeyiz ama dışarıdaki insanlar öyle değiller. Onlar yazılım dili bilmezler. Birşeyin basit ve tak-çalıştır olmasını isterler. Böylelikle burada bir sorun oluşmaya başlıyor.

Hepimiz C#,C++,Vb,Delphi vs dillerde yazılmlar yazıyor, bunları kullanıyoruz. Sorun bunları dağıtmakta başlıyor. Yazılımı setup yapması ayrı bir dert iken, yazılım x pc de sorunsuz çalışıyor, y pc de sıkıntı çıkartıyor gibi sorunlarla boğuşuyoruz. Mesela başıma gelen iki olayı size anlatayım.

-C# 2010 ile derlenmiş içersinde data grid bulunan proje, eğer yüklendiği bilgisayarda office var ise sorunsuz çalışıyor. Yok ise çalışmıyor. (Access tabanlı)
-Seri port gibi aygıtlar kullanılmış ise ve o pc de service pack yüklü değilse çalışmıyor.

Bizler kusursuz ürüler ve yazılımlar yapmak isteriz. Bir pc oyununu satın alırsınız. Cd leri pc nize takarsınız. Setup XXXX'i çalıştırısınız ve işiniz biter. O herşeyi halleder. Bende böyle yazılım setup ları yapmak istiyorum. Yazım yeni bir x pc ye kurulacağı zaman endişelenmek istemiyorum.


Sizler bu konuda neler yapıyorsunuz?
Electrical & Electronics Engineering -> Step one

ErsinErce

Hiç sorun yaşamamak için yazdığınız programın gereksinimlerini bilip ona göre setup hazırlayacaksınız.
Bu gereksinimler neler derseniz de yazdığınız platform ve yazarken kullandığınız kütüphaneler.

Kabil ATICI

Büyük yazılım projeleri aslında ekip işidir. Biri grup programın grafiklerini, diğeri nasıl çalışacağını, bir başkası kodları oluşturur, bir başkasıda bu yazılan programı test eder. Hatta test işleminden sonra alınan geri bildirimlerle tekrar tekrar üzerinde çalışılır.
Test grupları yerine programın alfa sürümleri sınırlı sürede çalışacak şekilde dağıtılır ve alınan geri bildirimlerle tekrar üzerinde çalışılır.
Bunlar programın oluşturulması esnasında ortaya konan stratejiye bağlıdır.

Programların (buna devre projeleri de dahil) sağlıklı çalışması için gereken şartları iyi bir şekilde test etmek şarttır. Bunun için genellikle programcılık işi yapmayan bir kişi veya kişilere veririm. Çünkü programcı programın çalışması için gereken şartları bilir.

Kendi açımdan sanal işletim sistemi kullanıyorum. Böylece birkaç farklı işletim sisteminde programı test etme imkanı buluyorum.

Burada C# olduğu için programın yazımı esnasında hangi Frameworks için yazılacağını belirlemek önemlidir. Böylece programın ihtiyacı kabaca ortaya çıkar.
ambar7

esensoy

Kullandığımız CNC kontrol IntervalZero RTX üzerinde yazılmış,
PCI bir kartı var, XP üzerine RTX kurulduktan sonra XP realtime hale geliyor ve yazılım sisteme kontrol ediyor,
Geçenlerde bir kurulumda ne yaptıysam RTX kurulamadı,
Japon kökenli Amerikalı mühendisler önce XP TR den kaynaklandığını söyledi,
Sonra XP SP2 ile değil XP SP3 ile çalışacağını söylediler,
4-5 gün süren bu durum sonrasında, Her dediklerini yaptığım halde yine çalışmadı, setup dosyası sadece programın kurulamadığını söylüyor, neyin eksik olduğundan bahsetmiyordu,

En son mühendisleri Teamviewer ile PC ye bağlandı, onu denedi bunu denedi, ancak C++ Redistrituble Pack 2005 yükledikten sonra yazılım kurulabildi,

Diyeceğim odur ki herkes aynı yollardan geçebiliyor, moral bozmamak lazım,

Yöntem olarak ta "baz olarak kurulmuş (xp, 7 ya da diğer yazılımlar) sistem üzerinde çalışması için hangi framework veya araçlar gerekir" sorusunun cevabı sizin sorununuza çözüm olacaktır diye düşünüyorum,
En tehlikeli an "zafer" anıdır.

MCansız

#4
hocam genelde hep delphi 7  kullandım virsual basic vs gibi programlarda kullandım ama setup için gerekli yapı karışık bunu için size innosetup programını önerebilirim uygulamayı yüklerken font dll rest vs gibi işlemleri kolaylıkla yapabilirsiniz eger pc kısmında fazla ugraşacaksanız örnegin arka planda farklı programlar kurulacaksa autoit programlama diline bakın 

Ramiz

Alıntı yapılan: ErsinErce - 17 Kasım 2013, 12:27:04
Hiç sorun yaşamamak için yazdığınız programın gereksinimlerini bilip ona göre setup hazırlayacaksınız.
Bu gereksinimler neler derseniz de yazdığınız platform ve yazarken kullandığınız kütüphaneler.

Tamam. Diyelim ki veri tabanı ve seri port kontrolu olan bir programımız olduğunu varsayalım. Gerekli componentleri setup içersine nasıl gömeceğiz?

Alıntı yapılan: ambar7 - 17 Kasım 2013, 13:02:26
Büyük yazılım projeleri aslında ekip işidir. Biri grup programın grafiklerini, diğeri nasıl çalışacağını, bir başkası kodları oluşturur, bir başkasıda bu yazılan programı test eder. Hatta test işleminden sonra alınan geri bildirimlerle tekrar tekrar üzerinde çalışılır.
Test grupları yerine programın alfa sürümleri sınırlı sürede çalışacak şekilde dağıtılır ve alınan geri bildirimlerle tekrar üzerinde çalışılır.
Bunlar programın oluşturulması esnasında ortaya konan stratejiye bağlıdır.

Programların (buna devre projeleri de dahil) sağlıklı çalışması için gereken şartları iyi bir şekilde test etmek şarttır. Bunun için genellikle programcılık işi yapmayan bir kişi veya kişilere veririm. Çünkü programcı programın çalışması için gereken şartları bilir.

Kendi açımdan sanal işletim sistemi kullanıyorum. Böylece birkaç farklı işletim sisteminde programı test etme imkanı buluyorum.

Burada C# olduğu için programın yazımı esnasında hangi Frameworks için yazılacağını belirlemek önemlidir. Böylece programın ihtiyacı kabaca ortaya çıkar.

Dediklerinizde haklısınız. Prosedürün nasıl işlediğinden az çok haberim vardı zaten ama bahsi geçen yazılımlar ile şuan üzerinde çalıştığım yazılımlar kıyaslanamayacak seviyedeler. Bunun kontrolünü tek başıma yapabilirim. Yazılımcı olmayan birisine test ettirme konusundada oldukça haklısınız. Bende öyle yapıyorum.

Siz C# ile mi çalışıyorsunuz? vede c# ile çalışıyorsanız, setup kısmını nasıl hallediyorsunuz?
Electrical & Electronics Engineering -> Step one

ErsinErce

Alıntı yapılan: Ramiz - 17 Kasım 2013, 13:20:43
Tamam. Diyelim ki veri tabanı ve seri port kontrolu olan bir programımız olduğunu varsayalım. Gerekli componentleri setup içersine nasıl gömeceğiz?

seri port için gerekli component zaten framework te mevcut,
eğer farklı bir kütüphane kullanıyorsan ve kurulum gerektiriyorsa diğer kurulumlarla birlikte aşağıdaki linkte tarif edilen şekilde ekleyebilirsin

http://www.c-sharpcorner.com/uploadfile/cb88b2/simple-steps-to-create-setup-file-using-install-shield-le-fr/

Ramiz

bunun için install shield ın bilgisayarımda kurulu olması gerekli öyle değilmi?
Electrical & Electronics Engineering -> Step one

Kabil ATICI

Şu anda kullandığım C# studio Release modu çalışmadığı için sadece Debug modundaki dosyaları oluşturabiliyorum. (C# sürümü nedeni ile)
Standart Framework sistemini kullanan programların için zaten setup dosyası diye bir zorunluluğu olmadı. Çünkü çoğunlukla dosyalarım bir .exe ve bir .ini dosyasından oluşuyor. Regedit işine girmediğim için burada ayarlama yapma gibi durumum olmadı. Sadece standart dışı dll kullananmam gerekirse bunlarıda doğrudan sistem içine göndermek yerine programın bulunduğu klasör içinde tuttuğum için ek bir yükleme gerekmiyor. Doğrudan klasörü rar ile sıkıştırıp gönderiyorum.
ambar7

Ramiz

Alıntı yapılan: ambar7 - 17 Kasım 2013, 15:17:52
Şu anda kullandığım C# studio Release modu çalışmadığı için sadece Debug modundaki dosyaları oluşturabiliyorum. (C# sürümü nedeni ile)
Standart Framework sistemini kullanan programların için zaten setup dosyası diye bir zorunluluğu olmadı. Çünkü çoğunlukla dosyalarım bir .exe ve bir .ini dosyasından oluşuyor. Regedit işine girmediğim için burada ayarlama yapma gibi durumum olmadı. Sadece standart dışı dll kullananmam gerekirse bunlarıda doğrudan sistem içine göndermek yerine programın bulunduğu klasör içinde tuttuğum için ek bir yükleme gerekmiyor. Doğrudan klasörü rar ile sıkıştırıp gönderiyorum.

İşte benim yazılımlarım biraz daha fazla gereksinimlere ihtiyaç duyuyor. Mesela veri tabanı gibi. O yüzden sıkıntılar oluşuyor.
Electrical & Electronics Engineering -> Step one

Analyzer

Selam,

Veritabanını sık mı kullanıyorsunuz yoksa 3-5 kb veri üzerinde mi çalışıyorsunuz? Eğer kullanım çok değilse dosyada
tutabilirsiniz. Ya da merkezi bir mysql server kurarsınız, herkes oraya bağlanıp işlem yapar. Yani bakış açısı ve sistemi
değiştirmek mantıklı görünüyor.
Kurulum için bir aralar Nullsoft Setup kullanıyordum. Şimdilerde NSIS isminde bir projeye evrilmiş.

http://nsis.sourceforge.net/Main_Page

Bakmakta fayda var.

Analyzer
Üşeniyorum, öyleyse yarın!

muhittin_kaplan

merhaba,
veritabanı kullanacaksan eğer
Veritabanı bağlantı yolunu dinamik yapmalısın.
diğer dosyalar vb durumlar sıradan dosyalar gibi kopyala ve register et. farkı yok. benin uzun yıllardır kullandığım bir setup yapma programı
http://www.jrsoftware.org/isinfo.php

agora_meyhanesi42

Alıntı yapılan: Ramiz - 17 Kasım 2013, 11:30:57
Hepimiz mühendis, tekniker, teknisyen ve ya bu işlerle uğraşan delileriz :) Bizler bir pc yazılımına taklalar attırıp, onu alt-üst edecek kapasitedeyiz ama dışarıdaki insanlar öyle değiller. Onlar yazılım dili bilmezler. Birşeyin basit ve tak-çalıştır olmasını isterler. Böylelikle burada bir sorun oluşmaya başlıyor.

Hepimiz C#,C++,Vb,Delphi vs dillerde yazılmlar yazıyor, bunları kullanıyoruz. Sorun bunları dağıtmakta başlıyor. Yazılımı setup yapması ayrı bir dert iken, yazılım x pc de sorunsuz çalışıyor, y pc de sıkıntı çıkartıyor gibi sorunlarla boğuşuyoruz. Mesela başıma gelen iki olayı size anlatayım.

-C# 2010 ile derlenmiş içersinde data grid bulunan proje, eğer yüklendiği bilgisayarda office var ise sorunsuz çalışıyor. Yok ise çalışmıyor. (Access tabanlı)
-Seri port gibi aygıtlar kullanılmış ise ve o pc de service pack yüklü değilse çalışmıyor.

Bizler kusursuz ürüler ve yazılımlar yapmak isteriz. Bir pc oyununu satın alırsınız. Cd leri pc nize takarsınız. Setup XXXX'i çalıştırısınız ve işiniz biter. O herşeyi halleder. Bende böyle yazılım setup ları yapmak istiyorum. Yazım yeni bir x pc ye kurulacağı zaman endişelenmek istemiyorum.


Sizler bu konuda neler yapıyorsunuz?
evet data gridli bur program yaparsiniz ve diger pcde office yoksa calismaz cunku gerekli dll yada ini dosyalarini yaptiginiz program bulamaz.mesela paralel port kontrolu icin gerekli dll dosyasi inpout32.dll dir bu her bilgisayarda olmaz sizin kopyalamaniz gerekebilir ayrica kopyaladiktan sonra kayit etmenizde gerekir. Command ekranindan regsrv ile baslayan bur komutu vardi tam hatirlamiyorim kaydi o komutla yaparsiniz. Boyle olmamasi icin ornegin visual basic 6.0 da make exe dedikten sonra programin ihtiyaci olan doayalari proje klasorune ekler. Siz ise bunlari toplarsiniz. Bana gore bu isi en iyi yapan programlardan buri inno setup gereken herseyi istenilen klasore kopyalar kurulacak yardimci programlar varsa kurar ustelik setup ekranina istediginjz logoyu resmi koyabilirsiniz. Bir cok profesyonel programda bunu kullanir. Inno setup yikarda saydigim herseyi tek basina yapar. Kurulumdan sonra calismasi istenen program varsa calistirir. Ve benim tavsiyem bir programi sanal bir windows uzerinde calistirip oyle dagitmaktir
Yüksel Türk ! Senin için yükselmenin hududu yoktur...

muhittin_kaplan


Ramiz

Alıntı yapılan: muhittin_kaplan - 18 Kasım 2013, 17:22:43
grid için office gerek yoktur.

Visual Studio 2010(c#) grid bağlantısı M.access ile sağlandıysa, istiyor.

mesaj birleştirme:: 18 Kasım 2013, 19:28:48

Alıntı yapılan: agora_meyhanesi42 - 18 Kasım 2013, 17:14:23
evet data gridli bur program yaparsiniz ve diger pcde office yoksa calismaz cunku gerekli dll yada ini dosyalarini yaptiginiz program bulamaz.mesela paralel port kontrolu icin gerekli dll dosyasi inpout32.dll dir bu her bilgisayarda olmaz sizin kopyalamaniz gerekebilir ayrica kopyaladiktan sonra kayit etmenizde gerekir. Command ekranindan regsrv ile baslayan bur komutu vardi tam hatirlamiyorim kaydi o komutla yaparsiniz. Boyle olmamasi icin ornegin visual basic 6.0 da make exe dedikten sonra programin ihtiyaci olan doayalari proje klasorune ekler. Siz ise bunlari toplarsiniz. Bana gore bu isi en iyi yapan programlardan buri inno setup gereken herseyi istenilen klasore kopyalar kurulacak yardimci programlar varsa kurar ustelik setup ekranina istediginjz logoyu resmi koyabilirsiniz. Bir cok profesyonel programda bunu kullanir. Inno setup yikarda saydigim herseyi tek basina yapar. Kurulumdan sonra calismasi istenen program varsa calistirir. Ve benim tavsiyem bir programi sanal bir windows uzerinde calistirip oyle dagitmaktir

Bahsettiğiniz inno setup, aşağıdaki linteki yazılımmı?

http://www.inndir.com/Inno-Setup-5299p.html#.UopNoFzD7ds
Electrical & Electronics Engineering -> Step one