ADO ile SETUP oluşturmak?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

ADO ile SETUP oluşturmak?

Mesaj gönderen MANDRAKE »

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
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

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.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

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. - .
tarikogut
Üye
Mesajlar: 32
Kayıt: 11 Nis 2006 04:31

Mesaj gönderen tarikogut »

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;
uses kısmına ini files ekle sonra ayarlar.ini dosyasıdan ip ve değişkenleri verebilirsin ben öyle yaptım böylece network sorunu çözüdü
100 Adet Dedicated Server
Vpn Network Uzmanlığı
3 Gbit Internet Connection
Kullanıcı avatarı
MoSoft
Üye
Mesajlar: 80
Kayıt: 10 Nis 2005 10:45
Konum: Askerden....
İletişim:

Mesaj gönderen MoSoft »

Hocam valla o kadar saçma cevaplar yazmışlarki :D 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.
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
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.

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=
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@MoSoft

- Büyük konuşmamak lazım. Bence cevapların soruya katkısını anlayamamışsın. :oops:

- 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. :idea:

- 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. :idea:
@MoSoft yazdı:Hocam valla o kadar saçma cevaplar yazmışlarki :D bende biri siler diye bekliyorum.
- Ek olarak bu ifadedeki silme olayını anlayamadım. Moderasyon olarak öyle bir uygulamamız yok. :idea:

- Herkesin çalışmalarında başarılar..
Resim
Resim ....Resim
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

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.
Verdiğim cevap yanlışmı ben mi anlayamadım, yoksa soruyu??
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

teşekkürler arkadaşlar gene deneyecem
princeoftides
Üye
Mesajlar: 47
Kayıt: 17 Ara 2004 12:14

Mesaj gönderen princeoftides »

selam microsoft data access component (MDAC 2.8) yğkleyip denersen problemin çözülür. Kolay gelsin
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

princeoftides yazdı:selam microsoft data access component (MDAC 2.8) yğkleyip denersen problemin çözülür. Kolay gelsin
tamam da bunu kurulan her pc sahibine kur diyemem ki. bunu projenin içine gömüp setup bitince otomatik kurulum yaptırmak gerekir onu nasıl yapabilirim??
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

sn @MANDRAKE, kullandığınız veritabanı devlet sırrı mı? (Versiyonu da dahil) Şunu söyleseniz de uygun cevap yazılsa. Bu işkence de bir an önce bitse.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
MANDRAKE
Üye
Mesajlar: 72
Kayıt: 26 Haz 2005 08:42

Mesaj gönderen MANDRAKE »

sabanakman yazdı:sn @MANDRAKE, kullandığınız veritabanı devlet sırrı mı? (Versiyonu da dahil) Şunu söyleseniz de uygun cevap yazılsa. Bu işkence de bir an önce bitse.
Veritabanı Access veritabanı dostum. access 2000 mdb yani
kusura bakmayın kafanızı şişiriyorsam:(
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

O zaman kullandığınız ConnectionString değerinde bir sorun olabilir. Programın yapısını ve kullandığınız ConnectionString değerini de yazabilirseniz iyi olacak.(Proje exesinin klasörü=?, db klasörü ve dosya adı=??).
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@MANDRAKE

@sabanakman doğru noktadan çözüm üretmeye çalışıyor. Utanmaya sıkılmaya lüzum yok. :oops: 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. :o
Resim
Resim ....Resim
Cevapla