Avatar billede kipolaks Nybegynder
22. februar 2003 - 20:53 Der er 13 kommentarer og
1 løsning

øhhhh???

et hurtigt spm...

jeg skal sende noget data gennem en udp socket
send metoden ser således ud:

udpsock.sendbuffer(data : array of char; length : integer);

nu vil jeg så sende en PChar med sendbuffer... hvad gør jeg så??
Avatar billede Slettet bruger
22. februar 2003 - 20:54 #1
Kanon overskrift
Avatar billede kipolaks Nybegynder
22. februar 2003 - 20:56 #2
:)
Avatar billede hermandsen Juniormester
22. februar 2003 - 20:57 #3
Kan du ikke bare sætte PChar() rundt om data?
Avatar billede kipolaks Nybegynder
22. februar 2003 - 21:23 #4
nej for så siger den incompatible types: 'array' and 'pchar'
Avatar billede kipolaks Nybegynder
22. februar 2003 - 21:30 #5
spørgsmålet er vel egentlig hvordan man laver en pchar til array of char (og tilbage igen)
Avatar billede hermandsen Juniormester
22. februar 2003 - 21:35 #6
Yep, har set den nu! :)
Avatar billede hermandsen Juniormester
22. februar 2003 - 22:31 #7
SendBuffer(Data^, Length);
Avatar billede Slettet bruger
22. februar 2003 - 22:32 #8
bedre overskrift TAKK
Avatar billede kipolaks Nybegynder
22. februar 2003 - 23:05 #9
incompatible types: 'array' and 'procedure, untyped pointer or untyped parameter'
Avatar billede hermandsen Juniormester
22. februar 2003 - 23:17 #10
Hmm... Underligt... Er din Data ikke en PChar??

procedure TForm1.Button1Click(Sender: TObject);

  procedure sendbuffer(data : array of char; length : integer);
  begin
    //dummy
  end;

const
  Hale = 'Hestemøj';
var
  Hest: PChar;
begin
  GetMem(Hest, Length(Hale)+1);
  StrPCopy(Hest, Hale);
  SendBuffer(Hest^, Length(Hale));
  FreeMem(Hest);
end;

Den vil sådan set gerne godtage den ved mig! Hmm...
Avatar billede kipolaks Nybegynder
23. februar 2003 - 04:04 #11
hmmm faktisk er det en pointer til en PChar jeg har at gøre godt med :)
Avatar billede kipolaks Nybegynder
23. februar 2003 - 06:25 #12
fandt selv ud af det.... da det jo var en pointer til en pchar skrives følgene...
udp.SendBuffer(PChar(data)^,size);

men så dukkede der et nyt problem op... i den anden ende er der jo en der modtager "data" med udp.ReadBuffer(var buff : array of char; var length : integer);

det der kommer "ind" vil jeg MEGET gerne have lavet til PChar! men hvordan?

hvis jeg skriver følgene lukker mit program uden advarsel... dvs.. at jeg kan ikke debugge det da der sker noget i formcreate som debuggeren ikke kan lide... :) men det kører fint nok hvis jeg bare nøjes med at køre exe filen uden om delhi (bare ikke når jeg modtager data med min udp komponent!)  :)

procedure TForm1.udpDataReceived(Sender: TComponent; NumberBytes: Integer;
  FromIP: String; Port: Integer);
var
  size : integer;
  mokka : pchar;
begin
  udp.ReadBuffer(mokka^,size);
end;

hvad er der galt her ??? compileren brokker sig ikke når jeg kompilerer...
Avatar billede kipolaks Nybegynder
23. februar 2003 - 06:52 #13
well.... jeg tror sq jeg hellere må komme i seng... godmorgen!
Avatar billede kipolaks Nybegynder
23. februar 2003 - 22:33 #14
lukker.. opretter et nyt.. tak for hjælpen..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester