Herzlich willkommen in der Delphi-PRAXiS, Franz.
Dein Versuch mit dem Array of Byte war gar nicht so schlecht:
Delphi-Quellcode:
function GetVarBytes(f: TField; var bda: TByteDynArray): Boolean;
begin
Result := f.DataType = ftVarBytes;
if Result then
DynArrayFromVariant(Pointer(bda), f.Value, TypeInfo(TByteDynArray));
end;
procedure TDemoForm.ButtonClick(Sender: TObject);
var
bda: TByteDynArray;
begin
with ADOTable do
if GetVarBytes(FieldByName('varbin'), bda)
then ShowMessage(IntToStr(Length(bda)))
else ShowMessage('?');
end;
Wenn keine NUL-Character drin vorkommen, dann kannst du den Feldinhalt auch einfach über die Feld-Methode AsString() bearbeiten.
Freundliche Grüße vom marabu