Avatar billede cadamsen Nybegynder
06. februar 2002 - 09:08 Der er 7 kommentarer og
1 løsning

Pointer


Hej ..

Jeg har følgende procedure som kaldes når der udføres en skrivning til et Can bus system.

procedure TForm1.CanChanWrite(Sender: TObject; id: Integer; msg: Pointer; dlc, flag: Integer);

De data der sendes ligger i 'msg' og antallet af data ligger i 'dlc'.

Mit spørgsmål er hvordan jeg kan udskrive de data der ligger i 'msg'på skærmen i en memobox eller noget andet.

Cadamsen
Avatar billede martinlind Nybegynder
06. februar 2002 - 09:30 #1
Du kan bruge Move til at flytte dine data over i en string evt.
VAR
  MyString : String;

begin
  SetLength(MyString,dlc+1);
  Move(msg^,MyString[1],dlc);
end;

Noget i denne stil, har ikke lige delphi ved hånden så det er ikke checket
Avatar billede cadamsen Nybegynder
06. februar 2002 - 09:39 #2
Hej Martinlind.

Det var ikke helt det jeg ville.

msg pointer indeholder et antal data bytes, det jeg gerne vil er at se hvade de forskellige data bytes indeholder.

Cadamsen
Avatar billede hreiff Nybegynder
06. februar 2002 - 09:48 #3
Du kan oprette en type af samme format som det msg peger på, f.eks:

Type
  DataRec = Record
    a: String;
    b: Real;
  end;

Var
  Data: array[1..50] of DataRec;

og bruge

Data := msg^;

for i := 1 to dlc do
  memo1.add(Data[i].a);
Avatar billede cadamsen Nybegynder
06. februar 2002 - 09:57 #4
Hej Hreiff

Jeg her forsøgt noget det minder og det du forslår, man kan ikke få det til at virke.

Cadamsen
Avatar billede cadamsen Nybegynder
06. februar 2002 - 09:59 #5
Hej Martinlind.

Jeg har arbejde lidt med Move funktionen, og nu virker det, så skriver du et svar, godkender jeg det.

Cadamsen
Avatar billede cadamsen Nybegynder
06. februar 2002 - 13:58 #6
Færdig
Avatar billede martinlind Nybegynder
06. februar 2002 - 14:01 #7
Det kunne jeg da ikke nå :(
Avatar billede martinlind Nybegynder
06. februar 2002 - 14:02 #8
For jeg hade ikke lige læst din kommentar
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