Arsip: Knapa bisa error yah help pls :(

 
user image
more 14 years ago

stoopid

saya coba menjalankan baris program berikut pada delphi 7 indy 10 winxp

procedure TForm1.Button1Click(Sender: TObject);
var
  test: TMemoryStream;
  buf: tBytes;
begin
test:=tmemorystream.Create;
test.LoadFromFile('coba.txt');
buf := test.Memory;
buf:= TBytes(test.memory);
idudpclient1.Binding.Send(buf,0,test.Size);
end;
pada button di klik hasilnya adalah pesan error seperti berikut: knp ya :(
user image
more 14 years ago

ZeAL

errrr.. gue gak tau jawabannya apaan.. tapi cuma mo nanya.. itu variabel buf kenapa diisi dua kali?

buf := test.Memory;
buf:= TBytes(test.memory); 
user image
more 14 years ago

stoopid

emm... sebelumnya saya uda coba2 cari contoh2 cara penggunaan dari udp ini. namun tiap kali saya coba perintah sendbuffer selalu tdk dapat dicompile dengan pesan error sbb: [Error] Unit1.pas(56): There is no overloaded version of 'Send' that can be called with these arguments bentuk umumnya seperti ini idudpclient1.SendBuffer(AHost:String; const APort:Integer; Const ABuffer:TBytes); makanya saya coba jiplak lgsg dari contoh di sebuah forum dan menurut orang tersebut baris program tersebut dapat dicompile dan berjalan dengan baik. tapi pas saya coba di tempat saya kok ga bisa >.<. saya juga menyadari keanehan variabel buf di deklarasikan 2x :D tapi untuk menjaga keaslian saya lgsg jiplak :P ada yg bisa tolong kasih contoh pengggunaan dari perintah tersebut ? saya mengalami masalah pada parameter Const ABuffer:TBytes. bagaimana cara penggunaanya jika data yg ingin digunakan berupa string ?
user image
more 14 years ago

portege

stoopid, ini bukan maksudnya?

var
  test: TMemoryStream;
  buf: TBytesField;
begin
try
 test:=tmemorystream.Create;
 test.LoadFromFile(extractFilePath(Application.ExeName)+'\coba.txt');
 buf := test.Memory;
 buf:= TBytesField(test.memory);
 idudpclient1.Binding.Send(buf,0,test.Size);
finally
 Application.MessageBox('Succeded','Warning',MB_OK OR MB_ICONWARNING)
end;
saya lebih tertarik sama error yang pertama dicoba dengan error:
There is no overloaded version of 'Send' that can be called with these arguments
error seperti ini akan di-raised kalo ada routine dengan nama yang sama (dengan overloading directive) tetapi sewaktu di panggil tidak memiliki karakteristik dari semua routine tersebut. seperti contohnya:
idudpclient1.SendBuffer(AHost:String; const APort:Integer; Const ABuffer:TBytes); 
sedangkan seharusnya methods SendBuffer memiliki parameter sbb:
idudpclient1.SendBuffer(AHost:String; const APort:Integer; Const ABuffer:TBytes);
dan/atau
idudpclient1.SendBuffer(AHost:String; const APort:Integer;var ABuffer;const AByteCount: Integer);
tapi kalo ngeliat errornya
...overloaded version of 'Send' ...
seharunya yang dipake parameter dari methods Send dengan parameter:
idudpclient1.Send(AHost:String;const APort:Integer;const AData:String);
dan/atau [pas]idudpclient1.Send(AData:String);[\pas]/ Tidak terlalu sulit khan? regard.
user image
more 14 years ago

stoopid

thx buat replynya sory saya baru balas.
@portege: stoopid, ini bukan maksudnya?

var
  test: TMemoryStream;
  buf: TBytesField;
begin
try
 test:=tmemorystream.Create;
 test.LoadFromFile(extractFilePath(Application.ExeName)+'\coba.txt');
 buf := test.Memory;
 buf:= TBytesField(test.memory);
 idudpclient1.Binding.Send(buf,0,test.Size);
finally
 Application.MessageBox('Succeded','Warning',MB_OK OR MB_ICONWARNING)
end;
saya sudah coba code tersebut dan terdapat error spt berikut [Error] Unit1.pas(63): Undeclared identifier: 'TBytesField' perlu diketahui saya menggunakan delphi 7 & indy 10. berikutnya mengenai send saya merasa sudah benar mengikuti parameter yang ada. namun nanti akan saya coba2 lagi. karena pada saat ini saya lagi mempelajari windows messages :? .
more ...
  • Pages:
  • 1
Share to
Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com