pdoxusrs.lck ile başım dertte

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
akipek
Üye
Mesajlar: 254
Kayıt: 24 Haz 2005 01:28

pdoxusrs.lck ile başım dertte

Mesaj gönderen akipek »

paradox için mevcut makalelerdeki herşeyi yaptım.

ana makinada programın bir raporunu çalıştırdığımda *.lck dosyaları f:\data\2006har klasorunun içinde olusuyor. ve rapordan çıkınca siliniyor.
rapor ekrandayken (dbgrid) başka bir pc db ye bağlanmaya çalıştığında meşhur hatayı alıyorum bu .lck ve .net dosyalarını nasıl sorunsuz çalıştırabilirm.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Çalışan program normal şekilde kapanıyor/sonlanıyorsa .lck dosyasının burada bir kabahatı olamaz. Belki de programdaki Table bileşenlerinde Exlusive True demişsindir :wink: Malum BDE için Table ve/veya Database bileşeninin Exlusive özelliği True demek özel/tek kullanıcılı çalışmak içindir. False olunca birden fazla kullanıcı VT veya tabloya erişebilir :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
akipek
Üye
Mesajlar: 254
Kayıt: 24 Haz 2005 01:28

Mesaj gönderen akipek »

yok exclusive false
sonlanmada problem yok.
f:\data daki table grid ile goruntulenirken kesinlikle boş bir formda bile open yapamıyorum.
akipek
Üye
Mesajlar: 254
Kayıt: 24 Haz 2005 01:28

Mesaj gönderen akipek »

acaba ben bu dosyaları table.before open da lck ları silsem olurmu ?
akipek
Üye
Mesajlar: 254
Kayıt: 24 Haz 2005 01:28

Mesaj gönderen akipek »

saolasin hocam buldum problemi tesaduf eseri. Afedersiniz programı yazan eleman net diri program içine koymuş
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Zaten NetDir in

Kod: Tümünü seç

procedure TDM.DMCreate(Sender: TObject);
var
  tc: int64;
  Buf : array[0..256] of char;
  T : TSearchRec;
  i: integer;
  AppDir: string;
begin
  Screen.Cursor := crHourglass;
  AppDir := ExtractFilePath(Application.ExeName);

  Database1.Connected := False;
  Database1.Params.Clear;
  Database1.Params.Add('PATH=' + AppDir);

  if Session.Active then
    Session.Close;
  Session.NetFileDir := AppDir; //ExtractFilePath(Application.ExeName);
  GetTempPath(255, Buf);
  Session.PrivateDir := Buf;

  try
    Database1.Connected := True;
  except
    ShowMessage('Veritabanı açılamıyor');
    Application.Terminate;
  end;

// tabloların açılması..

end;
şeklinde tanımlanmasında fayda var.. :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
prolcay
Üye
Mesajlar: 11
Kayıt: 04 Nis 2006 02:23

Mesaj gönderen prolcay »

Kod: Tümünü seç

 const
  FDbDriver = 'PARADOX';
  SubDir = 'Data';
var
Buf : array[0..256] of char;
  FAlias: string;
  FAliasDir: string;
  appdir:string;
begin
    if Session.Active then  Session.Close;
    FAlias := 'medi';
     AppDir := ExtractFilePath(Application.ExeName);
    Session.ConfigMode := cmPersistent;
    FAliasDir :=DirectoryListBox1.Directory; //ExtractFilePath(ParamStr(0)) + SubDir;
    Session.AddStandardAlias(FAlias, FAliasDir, FDbDriver);
    

  Session.NetFileDir := DirectoryListBox1.Directory;//AppDir;
  GetTempPath(255, Buf);
  Session.PrivateDir := Buf;
  Session.SaveConfigFile; 
hocam biliyorum eski bi konu ama projem yarım kaldı herşeyide bunu üzeirne kurdum aslında eskiden böyle probrllememler olmuyodu ama
herşey tamam ama net dir i bi ttürlü değiştiremiyorum.
sizin verdiğiniz kodun üzeridne oyandım biraz alias tamam program çalışıyo ama bi türlü olmuyo net diri değiştiremiyorum bu kodla
bide local share tru yaptığım zaman belli bi süre sonra invalid parameter diye bi hata beriyo onu false yaptım ama vu net dir beni yiyip bitiecek.

lütfen yardım!
Cevapla