Çözüldü-There is no overloaded version of 'Write' that can be called with these arguments hatası

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Çözüldü-There is no overloaded version of 'Write' that can be called with these arguments hatası

Mesaj gönderen sadikacar60 »

arkadaşlar delphi7 ile pascalscada kompenantını kullanmak istiyorum
kompenantı tanıttım library ekledim sorunsuz yüklendi
kompenantları forma ekledim

Kod: Tümünü seç

PLCTagNumber1.Write(1);
bu kod ile plc ye kumanda etmem lazım aynı kod lazarus ile çalışırken delphi7 de hata veriyor

aldığım hata:

Kod: Tümünü seç

There is no overloaded version of 'Write' that can be called with these arguments
araştırdığımda aşırı yüklenme vb anlayamadığım şeylerden bahsediyor.


aşağıdaki koda değer göndermeye çalışıyorum hiç bir sorun olmamasına rağmen neden bu hatayı alıyorum fikir verebilecek var mı acaba
farklı değişken türlerini denediğimdede aynı hatayı alıyorum
saygılarımla

Kod: Tümünü seç

procedure TPLCTagNumber.Write(Values:TArrayOfDouble; Count, Offset:Cardinal);
var
  tr:TTagRec;
  PlcValues:TArrayOfDouble;
begin
  PlcValues:=TagValuesToPLCValues(Values, Offset);
  if (PProtocolDriver<>nil) then begin
    BuildTagRec(tr,0,0);
    PProtocolDriver.Write(tr,PlcValues);
  end else
     TagCommandCallBack(PlcValues, Now, tcWrite, ioNullDriver, Offset);
  SetLength(PlcValues,0);
end;
En son sadikacar60 tarafından 05 May 2019 05:03 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
ikra
Üye
Mesajlar: 900
Kayıt: 28 Nis 2005 01:26
Konum: Simdilik Topragin Üstü

Re: There is no overloaded version of 'Write' that can be called with these arguments hatası

Mesaj gönderen ikra »

Asiri yükleme degil, fonksyonun bekledigi parametre ile sizin verdiginiz parametre uyum saglamiyor.
Fonksyon arrayofdouble, count ve offset parametreleri beklerken, siz integer bir deger ile cagirmaya calisiyorsunuz.
kıdemsiz üye
ismailkocacan
Üye
Mesajlar: 88
Kayıt: 25 Eyl 2011 06:11
Konum: İstanbul
İletişim:

Re: There is no overloaded version of 'Write' that can be called with these arguments hatası

Mesaj gönderen ismailkocacan »

The Overload directive allows you to have different versions of the same named function or procedure with different arguments.
http://www.delphibasics.co.uk/RTL.asp?Name=Overload
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Re: There is no overloaded version of 'Write' that can be called with these arguments hatası

Mesaj gönderen sadikacar60 »

teşekkürler arkadaşlar aşağıdaki şekilde çalıştı.

PLCTagKontrol.MemAddress:=0;
PLCTagKontrol.Value:=1;
PLCTagKontrol.Write;
Cevapla