ADO ile SETUP oluşturmak?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
ADO ile SETUP oluşturmak?
Arkadaşlar test yarışması şeklinde proje yaptım bitti. ado table ve ado sql kullandım tamamında ve setup yapmak istiyorum olmuyor? sadece exe yi koydum setup a başka pc ye geldim açtım açmadı . dbleri koydum gene olmadı. kodlarını falan hepsini mi koyacam anlamadım.
Yardımcı olursanız sevinirim vermem lazım yaptığım kişiye setup yapamıyorum:(
Şimdiden teşekkür ederim herkese
Yardımcı olursanız sevinirim vermem lazım yaptığım kişiye setup yapamıyorum:(
Şimdiden teşekkür ederim herkese
exe yi kendi makinanızda çalıştırdığınızda çalışıyor ise (delphiden bağımsız olarak)
Yüklenilen Pc de Ado versiyonu eski olabilir. SP2 yükleyin düzelmesi lazım.
Yani db ve Exe yeterli olur çalışması için.
Veritabanı acsess ise tabi.
bir vt acces ise Office de acees yüklümü ona bakmak lazım.
Yüklenilen Pc de Ado versiyonu eski olabilir. SP2 yükleyin düzelmesi lazım.
Yani db ve Exe yeterli olur çalışması için.
Veritabanı acsess ise tabi.
bir vt acces ise Office de acees yüklümü ona bakmak lazım.
Bir kelimenin anlamını öğretsen bile yeter..



- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Hangi veritabanını kullandınız. Kodların db ye erişilmemesiyle uzaktan yakından alakası yoktur. Delphi BDE kuruyor ama ado kullandığınız için bunuda bir espirisi yok. Burada önemli olan kullandığınız veri tabanı ve gerekli sürücüsünü yüklemek.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kod: Tümünü seç
procedure Tconn.DataModuleCreate(Sender: TObject);
var
section,username,password,hostname,database,path:string;
ayardosyasi: TIniFile;
connectionstring:string;
begin
conn.connect.Close;
conn.connect.ConnectionString:='';
section:='sunucuayari';
path:=ExtractFilePath(Application.ExeName);
ayardosyasi:=TIniFile.Create(path+'ayarlar.ini');
username:=ayardosyasi.ReadString(section,'username','');
password:=ayardosyasi.ReadString(section,'password','');
database:=ayardosyasi.ReadString(section,'database','');
hostname:=ayardosyasi.ReadString(section,'hostname','');
connectionstring:='Provider=SQLOLEDB.1;password='+Password+';Persist Security Info=True;User ID='+username+';Initial Catalog='+database+';Data Source='+hostname;
conn.connect.ConnectionString:=trim(connectionstring);
conn.connect.Open;
end;
100 Adet Dedicated Server
Vpn Network Uzmanlığı
3 Gbit Internet Connection
Vpn Network Uzmanlığı
3 Gbit Internet Connection
Hocam valla o kadar saçma cevaplar yazmışlarki
bende biri siler diye bekliyorum. Arkadaşımız diyor setup dosyasına ne atmalıyım adam ver itabanını bu şekilde bağla diyor. Ya siz sorunu anlamadınız yada arkadaş size anltamamış galiba.
Setup yaparken .Exe yi, Veri Tabanı Dosyasını doğal olarak tabloadi.mdb şeklinde olanı alacaksın bunları setup yapacaksın eğer mdb uzantısını c:\Program Files\Programın şeklinde yaptıysan programın setupı ayarlayıp dosyaları bu klasöre atmasını sağlıyacaksın eğer veri bağlantı yolunu veritabanıadi.mdb şeklinde yaparsan adoconnectiondaki bağlantı yolunu exe ile veritabanı aynı klasörde olduğu zaman program çalışır. Bu iki dosyanın dışında kullandığın .dll .ini .txt gibi dosyalar varsa programın çalışırken veri alışverişinde bulunduğu bu dosyalarıda setup ın içine dahil ediyorsun eğer diğer bilgisayarda Microsoft Jet 4.0 yoksa program çalışmaya bilir bunuda microfost un sitesinde aratarak bulabilirsin. Bunu yüklediğin zaman programın çalışır yada ben setupı çok iyi biliyorum dersen bu dosyayıda setupına ekleyebilirsin. Çalışmalarında başarılar dilerim.
Kısaca .exe ve veri tabanı dosyalarını alman yeterli olur. Eğer txt inf dll gibi dosyalarıda kullandıysan bunlarıda eklemen gerekir.
.pas .dfm .dcu .dof gibi Delphi dosyalarınıdır bunları kopyalaman gerekmez.

demiş. Burda diyorki sadece exei setupa yükledim diğer bilgisayarda çalışmadı. Yani demek istiyorki veri tabanını koymadım setupa bu yüzden programda veri tabanı olmadan çalışmıyor tabi. Adam belki yurt dışına göndercek static ip mi alsın programı verdiği taa ordan bağlansın diye.Arkadaşlar test yarışması şeklinde proje yaptım bitti. ado table ve ado sql kullandım tamamında ve setup yapmak istiyorum olmuyor? sadece exe yi koydum setup a başka pc ye geldim açtım açmadı . dbleri koydum gene olmadı. kodlarını falan hepsini mi koyacam anlamadım.
Yardımcı olursanız sevinirim vermem lazım yaptığım kişiye setup yapamıyorum:(
Şimdiden teşekkür ederim herkese
Setup yaparken .Exe yi, Veri Tabanı Dosyasını doğal olarak tabloadi.mdb şeklinde olanı alacaksın bunları setup yapacaksın eğer mdb uzantısını c:\Program Files\Programın şeklinde yaptıysan programın setupı ayarlayıp dosyaları bu klasöre atmasını sağlıyacaksın eğer veri bağlantı yolunu veritabanıadi.mdb şeklinde yaparsan adoconnectiondaki bağlantı yolunu exe ile veritabanı aynı klasörde olduğu zaman program çalışır. Bu iki dosyanın dışında kullandığın .dll .ini .txt gibi dosyalar varsa programın çalışırken veri alışverişinde bulunduğu bu dosyalarıda setup ın içine dahil ediyorsun eğer diğer bilgisayarda Microsoft Jet 4.0 yoksa program çalışmaya bilir bunuda microfost un sitesinde aratarak bulabilirsin. Bunu yüklediğin zaman programın çalışır yada ben setupı çok iyi biliyorum dersen bu dosyayıda setupına ekleyebilirsin. Çalışmalarında başarılar dilerim.
Kısaca .exe ve veri tabanı dosyalarını alman yeterli olur. Eğer txt inf dll gibi dosyalarıda kullandıysan bunlarıda eklemen gerekir.
.pas .dfm .dcu .dof gibi Delphi dosyalarınıdır bunları kopyalaman gerekmez.
Şafak 300 ( 10.04.2005) dü artık Yok....
http://www.ucretsizyazilim.com
Kısaca Ben : http://www.google.com.tr/search?hl=tr&q ... 5%9F&meta=
http://www.ucretsizyazilim.com
Kısaca Ben : http://www.google.com.tr/search?hl=tr&q ... 5%9F&meta=
@MoSoft
- Büyük konuşmamak lazım. Bence cevapların soruya katkısını anlayamamışsın.
- Veritabanı bağlantısını program içerisinden dinamik yapmazsan, ister setup yap koy gönder ister ayrıca kopyala gönder hedef makinede çalışmaması kadar doğal bir sonuç yoktur.
- Arkadaşlar vakit ayırıp doğru veya sana göre yanlış bir tespitte bulunarak önerilerini yapmışlar. Sana da buna destek olacak veya bağımsız fikir üreterek, soru soran üyeye yardımcı olmak düşer. Üzerine düşeni yapmışsın ama bunu yaparken de rencide edici olmamak lazım.
- İfaden şöyle olabilirdi. "Ben soruyu farklı anladım. Eğer şunu soruyorsan ..... önerim şudur...".
- Bazı ifadeleri smiley'ler de kurtarmaz. Smiley kullanımında konuyu kısa kesersen espiri olur, paragraf uzarsa eleştiri. Bunun rencide edici olmamasına gayret göstermek lazım.
- Herkesin çalışmalarında başarılar..
- Büyük konuşmamak lazım. Bence cevapların soruya katkısını anlayamamışsın.

- Veritabanı bağlantısını program içerisinden dinamik yapmazsan, ister setup yap koy gönder ister ayrıca kopyala gönder hedef makinede çalışmaması kadar doğal bir sonuç yoktur.

- Arkadaşlar vakit ayırıp doğru veya sana göre yanlış bir tespitte bulunarak önerilerini yapmışlar. Sana da buna destek olacak veya bağımsız fikir üreterek, soru soran üyeye yardımcı olmak düşer. Üzerine düşeni yapmışsın ama bunu yaparken de rencide edici olmamak lazım.
- İfaden şöyle olabilirdi. "Ben soruyu farklı anladım. Eğer şunu soruyorsan ..... önerim şudur...".
- Bazı ifadeleri smiley'ler de kurtarmaz. Smiley kullanımında konuyu kısa kesersen espiri olur, paragraf uzarsa eleştiri. Bunun rencide edici olmamasına gayret göstermek lazım.

- Ek olarak bu ifadedeki silme olayını anlayamadım. Moderasyon olarak öyle bir uygulamamız yok.@MoSoft yazdı:Hocam valla o kadar saçma cevaplar yazmışlarkibende biri siler diye bekliyorum.

- Herkesin çalışmalarında başarılar..
Verdiğim cevap yanlışmı ben mi anlayamadım, yoksa soruyu??conari yazdı:exe yi kendi makinanızda çalıştırdığınızda çalışıyor ise (delphiden bağımsız olarak)
Yüklenilen Pc de Ado versiyonu eski olabilir. SP2 yükleyin düzelmesi lazım.
Yani db ve Exe yeterli olur çalışması için.
Veritabanı acsess ise tabi.
bir de vt acces ise Office de acees yüklümü ona bakmak lazım.
Bir kelimenin anlamını öğretsen bile yeter..



-
- Üye
- Mesajlar: 47
- Kayıt: 17 Ara 2004 12:14
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
@MANDRAKE
@sabanakman doğru noktadan çözüm üretmeye çalışıyor. Utanmaya sıkılmaya lüzum yok.
Cevapları kısa yoldan verirsen aynı kısayoldan çözüme ulaşabilirsin.
- ADO nesneleriyle bir veritabanına bağlanmak için ADOConnection kullanmak doğaldır. Burada senin uygulamandaki hata, ADOConnection kurgusunu peşinen projenin kaynak kodundan yapmış olman şeklinde bir tahminimiz var.
- Bu da şu olumsuz sonucu doğuruyor: Eğer setup hazırlamışsan, müşterin, projeyi tam da senin kaynak kodlarının bulunduğu yerin benzeri bir klasör yolu izlemeyerek direkt "Program Files" klasörüne kurmak isteyecektir.
- Yani : senin Projen; d:\delphi\projeler\benimprojem isminde bir klasörde ise ve AdoConnection içerisinde bu klasörü gösterip altındaki bir MDB veritabanı dosyasını bağlamışsan, SETUP işlemi sonucu müşterinin harddiskinde de aynı bu yerde veritabanı aranır. Bu bir sorundur.
- Bu işi dinamik hale getirmek zorundasın. Yani program EXE'si neredeyse oraya veya özel başka bir yere veritabanını koyacak ve programın her açılışında bir defaya mahsus olarak ADOConnection nesnesinden ConnectionString tanımını bu mevcut klasöre göre özelleştirip bağlanacaksın. Çözümün budur.
- Bunu nasıl yapacağını bilmiyorsan forumda arama yapabilirsin. Bulduklarını da buradan paylaşırsın. Bu sayede başlığa ulaşan diğer üyelerimizle çözümü paylaşmış olursun.
@sabanakman doğru noktadan çözüm üretmeye çalışıyor. Utanmaya sıkılmaya lüzum yok.

- ADO nesneleriyle bir veritabanına bağlanmak için ADOConnection kullanmak doğaldır. Burada senin uygulamandaki hata, ADOConnection kurgusunu peşinen projenin kaynak kodundan yapmış olman şeklinde bir tahminimiz var.
- Bu da şu olumsuz sonucu doğuruyor: Eğer setup hazırlamışsan, müşterin, projeyi tam da senin kaynak kodlarının bulunduğu yerin benzeri bir klasör yolu izlemeyerek direkt "Program Files" klasörüne kurmak isteyecektir.
- Yani : senin Projen; d:\delphi\projeler\benimprojem isminde bir klasörde ise ve AdoConnection içerisinde bu klasörü gösterip altındaki bir MDB veritabanı dosyasını bağlamışsan, SETUP işlemi sonucu müşterinin harddiskinde de aynı bu yerde veritabanı aranır. Bu bir sorundur.
- Bu işi dinamik hale getirmek zorundasın. Yani program EXE'si neredeyse oraya veya özel başka bir yere veritabanını koyacak ve programın her açılışında bir defaya mahsus olarak ADOConnection nesnesinden ConnectionString tanımını bu mevcut klasöre göre özelleştirip bağlanacaksın. Çözümün budur.
- Bunu nasıl yapacağını bilmiyorsan forumda arama yapabilirsin. Bulduklarını da buradan paylaşırsın. Bu sayede başlığa ulaşan diğer üyelerimizle çözümü paylaşmış olursun.
