InstallShield kullanımı - Access erişimi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
must68
Üye
Mesajlar: 21
Kayıt: 14 Tem 2003 12:28

InstallShield kullanımı - Access erişimi

Mesaj gönderen must68 »

BDE ve ADO kullanarak Access tablolarına erişen bir programım var. Microsoft.Jet.OLEDB.4.0 kullanarak Access tablosuna erişiyorum. Bu programın setup dosyasını hazırlamak istiyorum.
Elimde Delphi 7 Enterprise ile gelen InstallShield Borland sürümü var. Files and Features bölümünde dosyalarimi belirtiyorum. Objects/Merge Modules bölümünde yada diger bölümlerde neler seçmem gerektiği konusunda yardımcı olabilirmisiniz.
Oluşturduğum setup dosyasını kendi bilgisayarımda kurduğumda calışıyor. Ama başka bir bilgisayarda çalıştıramadım.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7601
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

InstallShield için bakmam lazım, ancak bir şey dikkatimi çekti. Access tablolarını ADO ile kullanıyorsanız BDE'yi karşıya yüklemenize gerek yok. Sadece ADO'nun kurulu olması yeterlidir.

Ayrıca ADO Windows 98 ve üstü sürümlerde kurulu olarak geliyor. Yani 2000 ve XP'de de ADO vardır zaten. Sadece Windows 95 makinalara kurmak gerekir. Ancak daha yeni bir ADO sürümü kullanmış iseniz, hepsine kurmak en uygunu.

Kolay gelsin.
ozgur917
Üye
Mesajlar: 4
Kayıt: 11 Eki 2015 08:44

Re: InstallShield kullanımı - Access erişimi

Mesaj gönderen ozgur917 »

Aynı sıkıntı bende de var. kurulum dosyası kendi bilgisayarımda çalışıyor fakat proje klasöründeki accesse bağlanıyor. yani kurulum sırasında installshielde veri tabanını aktardığım halde hala proje olarak çalışırken bağlandığı veritabanına bağlanıyor böylece diğer bilgisayarlarda da çalışmıyor dolayısıyla. bunu nasıl çözebiliriz.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: InstallShield kullanımı - Access erişimi

Mesaj gönderen mrmarman »

Bağlantı işlemini projenin açılışını takiben kendin dinamik olarak yapmalısın. AdoConnection nesnene proje sırasında yaptığın bağlantıyı iptal et yada basitçe Connected property'sini FALSE bırak.

Örneğin :

Kod: Tümünü seç

    AdoConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
                                     + ExtractFilePath(Application.Exename) + 'DATA\database.mdb';
dediğinde daima EXE dosyasının olduğu klasörde DATA isminde bir klasör altındaki database.mdb dosyasına odaklanır.

Yani Projenin OnLoad veya veritabanı hazırlık procedure'ün hangisi ise aşağıdaki gibi olsun.

Kod: Tümünü seç

  if NOT AdoConnection1.Connected then
  begin
    AdoConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
                                     + ExtractFilePath(Application.Exename) + 'DATA\database.mdb';
    AdoConnection1.LoginPrompt      := False;
    ADOQuery1.Connection            := ADOConnection1;
    AdoQuery1.SQL.Text              := 'SELECT * FROM tablo'; // veya senin için uygun olan hangisi ise...
    AdoQuery1.Active := True;
    DataSource1.DataSet := ADOQuery1;
  end;
Resim
Resim ....Resim
ozgur917
Üye
Mesajlar: 4
Kayıt: 11 Eki 2015 08:44

Re: InstallShield kullanımı - Access erişimi

Mesaj gönderen ozgur917 »

@mrmarman hocam çok teşekkürler..
Cevapla