Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Class Tanımlama ve Kullanma-Not Found Hatası
#1
Şu şekilde bir class yazdım.

unit uDvrmDat;

interface

uses

System.Classes,System.Types,System.IniFiles,System.IOUtils,System.SysUtils;

type
 TDvrmDat = class
 public
   function DatOkuString(grupAdi:string;degiskenAdi:string;defaultDeger:string;datAdi:string):string;
   function DatOkuInteger(grupAdi:string;degiskenAdi:string;defaultDeger:Integer;datAdi:string):Integer;
   function DatOkuDouble(grupAdi:string;degiskenAdi:string;defaultDegerBig Grinouble;datAdi:string)Big Grinouble;
   function DatOkuBoolean(grupAdi:string;degiskenAdi:string;defaultDeger:Boolean;datAdi:string):Boolean;
   procedure DatYazString(grupAdi:string;degiskenAdi:string;deger:string;datAdi:string);
   procedure DatYazInteger(grupAdi:string;degiskenAdi:string;deger:Integer;datAdi:string);
   procedure DatYazDouble(grupAdi:string;degiskenAdi:string;degerBig Grinouble;datAdi:string);
   procedure DatYazBoolean(grupAdi:string;degiskenAdi:string;deger:Boolean;datAdi:string);
 end;

var
 dat: TIniFile;

implementation

function TDvrmDat.DatOkuString(grupAdi:string;degiskenAdi:string;defaultDeger:string;datAdi:string):string;
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 Result := dat.ReadString(grupAdi, degiskenAdi,defaultDeger);
 FreeAndNil(dat);
 // ------------------ -------------------------------------------------
end;

function TDvrmDat.DatOkuInteger(grupAdi:string;degiskenAdi:string;defaultDeger:Integer;datAdi:string):Integer;
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 Result := dat.ReadInteger(grupAdi, degiskenAdi,defaultDeger);
 FreeAndNil(dat);
 // ------------------ -------------------------------------------------
end;

function TDvrmDat.DatOkuDouble(grupAdi:string;degiskenAdi:string;defaultDegerBig Grinouble;datAdi:string)Big Grinouble;
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 Result := dat.ReadFloat(grupAdi, degiskenAdi,defaultDeger);
 FreeAndNil(dat);
 // ------------------ -------------------------------------------------
end;

function TDvrmDat.DatOkuBoolean(grupAdi:string;degiskenAdi:string;defaultDeger:Boolean;datAdi:string):Boolean;
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 Result := dat.ReadBool(grupAdi, degiskenAdi,defaultDeger);
 FreeAndNil(dat);
 // ------------------ -------------------------------------------------
end;

procedure TDvrmDat.DatYazString(grupAdi:string;degiskenAdi:string;deger:string;datAdi:string);
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 dat.WriteString(grupAdi, degiskenAdi, deger);
 FreeAndNil(dat);

 // -------------------------------------------------------------------
end;

procedure TDvrmDat.DatYazInteger(grupAdi:string;degiskenAdi:string;deger:Integer;datAdi:string);
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 dat.WriteInteger(grupAdi, degiskenAdi, deger);
 FreeAndNil(dat);
 // -------------------------------------------------------------------
end;

procedure TDvrmDat.DatYazDouble(grupAdi:string;degiskenAdi:string;degerBig Grinouble;datAdi:string);
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 dat.WriteFloat(grupAdi, degiskenAdi, deger);
 FreeAndNil(dat);
 // -------------------------------------------------------------------
end;

procedure TDvrmDat.DatYazBoolean(grupAdi:string;degiskenAdi:string;deger:Boolean;datAdi:string);
begin
 // Dat değerini oku------------------------------------------
 dat := TIniFile.Create(TPath.GetDocumentsPath + PathDelim + datAdi);
 dat.WriteBool(grupAdi, degiskenAdi, deger);
 FreeAndNil(dat);
 // -------------------------------------------------------------------
end;


end.

Kendi içinde hiçbir hata ya da uyarı almıyorum. Bu class ı kendi yazdığım başka bir class içine eklediğimde de hata almıyorum. Ama form içeren bir dosyaya eklediğimde "not found" hatası alıyorum.

Projemde yazdığım class yolları ekli durumda. Herşey doğru görünüyor. Basit bir hata yapıyorum gibi sanki.

   
   
Cevapla
#2
Derlerken hata çıkmıyorsa arayüzdeki uyarıların pek bir önemi yok.
Cevapla
#3
Merhaba.

SHIFT + F11 ( Add to project ) yaparak ilgili uniti ekleyin. DPR dosyasında yolu doğru görünmüyor olabilir.

- Sizdeki ERROR olduğundan proje derlenmiyor ve çalışmıyordur.
- Diğer yandan sadece Warning olsaydı Delphi IDE'den kaynaklı bir sorun gibi görünüyor derdim.. Warning olayı bazen bende de oluyor. Can sıkıntısı yarattığı zamanlara kadar çalışıyorum, sonra projeyi kapatıp yeniden açıyorum düzeliyor. Can sıkıntısı derken, kod tamamlama özelliğinde yeni eklediğim property vb. ihtiyacımın sıklaşmasından kasıt. Delphi IDE, daha önce kaydedilmiş projeyi yeniden yüklerken tüm UNIT yapılarını düzgün bir şekilde geziyor ve eklenmiş property vb. tanımlamaları kendi özelindeki tanımlılar listesine ekliyor olmalı.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  matematiksel karşılaştırma hatası nevzatc 7 441 14-04-2026, Saat: 06:36
Son Yorum: emailx45
  Delphi ile SQL server bağlantı hatası yakalama Under 20 1.979 21-11-2025, Saat: 15:24
Son Yorum: mrmarman
  OpenSSL Hatası mcuyan 1 487 29-04-2025, Saat: 02:28
Son Yorum: mcuyan
Photo Delphi 12.2ilginç bir ide hatası tuna 13 3.368 25-03-2025, Saat: 09:47
Son Yorum: tuna
  Delphi Ide hatası Bay_Y 6 1.231 04-02-2025, Saat: 10:56
Son Yorum: Bay_Y



Konuyu Okuyanlar: 1 Ziyaretçi