Hallo,
Ich habe probleme mit folgender funktion.
Wenn ich für Windows compilire klappt alles inwandfrei, nur unter Andoid nicht.
Unter Android bekommen ich immer 00 zurück.
Delphi-Quellcode:
function StringToHex(S: String): String;
var
I: Integer;
begin
Result := '';
for I := 1 to length(S) do
Result := Result + ' ' + IntToHex(ord(S[I]), 2);
end;
Hier ein Beispiel.
Delphi-Quellcode:
procedure TfrmMain.RadioButtonChanged(Sender: TObject);
Var
I, X: Integer;
Begin
Memo1.Lines.Clear;
I := HexToByte(IntToHex(TRadioButton(Sender).Tag, 1));
for X := 0 to 7 do
begin
PortState0[I][X] := False; //zur info PortState0: array [0 .. 7, 0 .. 7] of Boolean;
end;
Exo := Exodet[I]; //zur info Exo: String; und Exodet: array [0 .. 7] of String;
Memo1.lines.add(' '+StringToHex(Exo)+' ' +Exodet[I]);
ScanStatus;
SetPortOn(I);
End;
Memo1.lines.add(' '+StringToHex(Exo)+' ' +Exodet[I]);
StringToHex gibt mir unter Windows den richtigen wert zurück.
Unter Android bekomme ich immer den wert 00.
Mit Exodet[i] klappt die ausgabe auf beiden.
Wieso geht das nicht under Android?