Benim derdim şu şekilde bir şey, Firebird DB kullanarak bir yazılım geliştiriyorum. Buraya kadar herşey normal fakat daha önceden sürekli MySQL kullandığımdan hala şu DB lerin bir yerde local olarak tutulmasına(Acces deki gibi) tam olarak alışamadım. Sonuç olarak benim kullanıcılarım herhangi bir yeri map yapmalarına gerek kalmada server Client ilişkisi içerisinde Ortak olarak DB'yi kullanmasını istiyorum. Bunun içinde Serverda Alias olarak veritabanlarını tanımlama yapıyorum. localhost:test veya Server_Adi:test diye bağlanabiliyorum.
Fakat müşteri programı veya firebirdü farklı dizinlere kurabilir. Benim aklıma iki çözüm geliyor. 1. si Firebird ile programını beraberce setup ettirim ona göre otomatikman alias dosyasına verileri yazdırmak. Firebirdü istediğimiz gibi tekrar setup dosyasını hazırlama konusunda bir engel var mı ???
Yada servis olarak çalışırken aliases.conf dosyasının yerini otomatikman bulmamızın veya bu aliasları bir şekilde tanımlamamızın bir yolu var mı ???
FireBird'ün Tekrar Setup Yapılması
-
- Kıdemli Üye
- Mesajlar: 574
- Kayıt: 01 Şub 2004 12:29
- Konum: Erdemli - MERSİN
Firebird ü farklı bir dizine kurmasının ne mahsuru olabilirki!
Ha vt dosyasını senin istediğinden farklı bir yere kurarsa o zaman
su baslıgı bir inceleyin -->
viewtopic.php?t=4208&highlight=
Ha vt dosyasını senin istediğinden farklı bir yere kurarsa o zaman
su baslıgı bir inceleyin -->
viewtopic.php?t=4208&highlight=
Açıkcası inceleme yaptım verdiğiniz linkteki bilgileri ama tam doyurucu veya benim istediğim bilgiye ulaşamadım. Alias olmadığı durumdaki bir olaydan bahsediyor gibime geldi.
Aliasla çalıştığımdan bana pek uymayan bir konu. Veri tabanı benim istediğim yerde olmaya bilir ben aliasa baktığımdan sorun olmaz. Ama alias tanımlayamazsam veya Aliases.conf dosyasına ulaşamazsam benim için büyük problem.
Bunun içinde aklıma gelen iki çözüm geliyor. 1. si programımı ve Firebird birlikte setup edip ona göre program diziniminde belli yerde alias dosyası olacağından kolaylıkla ulaşıp değiştirebilirim. (Burada tek kararsızlığım tekrar setup yapmam, lisans konusunda bir sorun olur mu ? )
2. si Varsa, alias dosyasına otomatik olarak firebirde alias ekletecek bir fonksiyon ???
Aliasla çalıştığımdan bana pek uymayan bir konu. Veri tabanı benim istediğim yerde olmaya bilir ben aliasa baktığımdan sorun olmaz. Ama alias tanımlayamazsam veya Aliases.conf dosyasına ulaşamazsam benim için büyük problem.
Bunun içinde aklıma gelen iki çözüm geliyor. 1. si programımı ve Firebird birlikte setup edip ona göre program diziniminde belli yerde alias dosyası olacağından kolaylıkla ulaşıp değiştirebilirim. (Burada tek kararsızlığım tekrar setup yapmam, lisans konusunda bir sorun olur mu ? )
2. si Varsa, alias dosyasına otomatik olarak firebirde alias ekletecek bir fonksiyon ???
Alias dosyasının yerini bulmak için Firebird Control Center'ın kodlarından yararlandım Delphi ci arkadaşlar bu direk o kodlara bakabilirler. BCB ciler az olduğumuzdan kendimde BCB ci olduğumdan kıyak olsun biraz 

Kod: Tümünü seç
AnsiString AliasPath = "";
TRegistry *Reg ;
Reg = new TRegistry;
try
{
Reg->RootKey = HKEY_LOCAL_MACHINE;
if (Reg->OpenKey("\\Software\\Firebird Project\\Firebird Server\\Instances", false))
{
if (Reg->ValueExists("DefaultInstance"))
{
AliasPath = Reg->ReadString("DefaultInstance");
}
Reg->CloseKey();
}
}
__finally
{
delete Reg;
}
if (AliasPath != "")
{
ShowMessage("Kurulum Dizini : "+AliasPath);
ShowMessage("Alias Yeri :"+AliasPath+"aliases.conf");
}