adotable yolunu yoketmek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

adotable yolunu yoketmek

Mesaj gönderen similyan »

arkadaşlar installshield ile programımı paketliyorum ama delphi yüklü olmayan pc de çalışmıyor(veritabanına ulaşmıyor)..Form dan edindiğim bilgiler doğrultusunda Bde yi installshield da kurmama gerek yokmuş bende artık sorunu sadece şuna bağlıyorum benim delphide veritabanım(access) c:/proje/data/veritabani.mdb dizininde ama program yüklenince program files a yükleniyor sanırsam sorun bu veritabanının yolunu nasıl uygun bi hale getirebilirim form da araştırma yaptım bu konuyla ilgili bi çok döküman var ama yine olmadı daha detaylı bi şekilde sorayım dedim...
Saygılarımla...
Kullanıcı avatarı
Murat DİCLE
Kıdemli Üye
Mesajlar: 702
Kayıt: 19 Nis 2006 04:12
Konum: İstanbul
İletişim:

Mesaj gönderen Murat DİCLE »

Merhaba,

ConnectionString'i kopyala.
c:\proje\data\xxx.mdb yazan yere *data* diye bişi yaz.

Şimdi adoconnection'a manuel olarak bağlatı yolunu vereceğiz..

eğer data modul kullanıyorsan, oncreate'inde yada adoconnection'u nerede open yapıyorsan öncesinde şunları yap..

ConnectionString'i kopyaladın ve dediğimi yaptın.. şimdi open yapmadan önce
(bunu ezbere yazıyorum, komutun doğrusu bu olmayabilir yada yanlış yazmış olabilirim.)

Kod: Tümünü seç

AnsiREplaceString(adoConn.ConnectionString, '*data*', 'yeni yol');
diye bişi yaz ve *data*'yı değiştir.. yeni yol olarak sanırım, uygulamanın çalıştığı dizindeki DATA klasörünü seçiyorsun.

Yani yeni yol olarak şunu vermen gerekecek..

Kod: Tümünü seç

FN := ExtractFilePath(Application.ExeName) + 'DATA\xxx.mdb);
AnsiREplaceString(adoConn.ConnectionString, '*data*', FN');
adoConn.Open;
galiba AnsiReplacestring için uses'e StrUtils'i eklemen gerekiyor...

işte böyle bişi. eksik gedikleri sen tamamla istersen..

Saygılar...
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

Kod: Tümünü seç

ADOTABLE1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + ExtractFilePath(Application.ExeName) + '\DATA\DENEME.mdb;Persist Security Info=False;Jet OLEDB:Database Password=';
böylece başka hiç bişey yazmadan exenin yanında data klasöründe deneme.mdb dosyası açılır.

ağda bile kullansan burdan kısayol alınca çalışır.
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

Mesaj gönderen similyan »

sayın alucard vermiş olduğunuz kod'u adotable1 in connection string bölümüne yazdım ama

Kod: Tümünü seç

 Başlatma dizesi biçimi OLE DB belirtimine uymuyor
diye bi hata veriyor verdiğiniz kod dan başka bişey yapmam gerekiyormu
Application.exename yazan yere kendi exe min ismini falan mı yazacam...
Kullanıcı avatarı
NewMember
Üye
Mesajlar: 990
Kayıt: 29 Haz 2005 06:57
Konum: Bursa

Mesaj gönderen NewMember »

Properties penceresinden ConnectionStringi ayarlarken açılan dialog penceresinde mdb dosyasını seçince tam yoluyla birlikte gelir.Sen orada tam yolu sil.Exeye göre göreceli yol kalsın.Sorun olmaz.

Mesela orada seçince:

Kod: Tümünü seç

c:/proje/data/veritabani.mdb
yazar.Sen onu


Kod: Tümünü seç

data/veritabani.mdb
şeklinde bırak.Data klasörünüde exe ile aynı yerde tutttuktan sonra sorun olmaz.Aslında @alucard aynısını söylemiş o şekilde de sorunsuz çalışır ancak sen büyük ihtimalle kodu yazarken bir yerde bir hata yaptın.
Bu benim söylediğim kodsuz şekilde sorunun hallolması.

Hangisini istesen onu kullan.
Kolay gelsin.
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

Mesaj gönderen similyan »

data/veritabani.mdb yazınca hata vermedi ve installshield de kurulumu hazırlayıp başka bir bilgisayara yüklediğimde

Kod: Tümünü seç

c:/documents and settings/bilgisayaradi/data/veritabani.mdb',geçerli bir yol değil
hatası veriyor şimdi ben benim projemi kendi bilgisayarımda nerey kaydedecem sorun ne yine anlamadım
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

installshield'de program kısayollarını oluştururken, çalışma yeri olarak INSTALLDIR'ı seçerseniz düzelebilir.
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

Mesaj gönderen similyan »

installshield da bi tane kısayolum var o da programın exe si

Kod: Tümünü seç

 [INSTALLDIR]Project1.exe

olarak yazılı ama dediğin gibi sadece Installdır olmuyor başka nerden olabilirki
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

Abi ben WorkingDirectory'yi kastetmiştim.
Orda [INSTALLDIR] yazarsan düzelmesi lazım.
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

Mesaj gönderen similyan »

tamamdır ben working directory kısmını boş bırakmışım oraya tam yolu yazınca çalıştı sen sölemesen orayı göreceğim yoktu çok teşekkür ederim sana ne sorsam hızır gibi yetişiyon valla ..
Hemen installshield ile ilgili bi yazı hazırlayacam tamamını detaylarıyla anlatacam ve makaleler bölümüne koyacam ben baya sıkıntı çektim diğer arkadaşlar çekmesin....
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

Mesaj gönderen similyan »

ulucoder afedersin bişey daha soracam ben flash eklemiştim forma o şimdi başka bilgisayarda çalışmıyor onu nasıl yapabilirim..
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

abi ben bilmiyorum, ama forum biliyor galiba:)
Bu konu daha önce geçmişti diye hatırlıyorum.

Bak burda anlatılanlar işine yarayabilir.
similyan
Üye
Mesajlar: 52
Kayıt: 08 Nis 2006 12:18
Konum: konya
İletişim:

Mesaj gönderen similyan »

Tamam teşekkürler
Cevapla