Zitat von
daywalker299:
So, ich habe jetzt eine Lösung:
Delphi-Quellcode:
{ 1 = Null }
{ 8 = Einfacher Wert }
{ 8204 = Mehrere Werte (Array)}
varTemp := vartype(vOut.DefaultIPGateway);
Case varTemp of
1 : ANetwork[Counter].gw := '';
else
ANetwork[Counter].gw := VarToStr(vOut.DefaultIPGateway[0]);
end;
1 -> (System.)varNull
Delphi-Quellcode:
if VarIsNull(vOut.DefaultIPGateway) then
ANetwork[Counter].gw := ''
else
ANetwork[Counter].gw := VarToStr(vOut.DefaultIPGateway[0]);
Erscheint mir lesbarer/verständlicher.
edit: bevor man auf das erste Element des Variants als Array zu greift, sollte man "vielleicht" prüfen, ob es a) ein Array ist und b) es ein Element 0 gibt (VarArrayDimCount, VarArrayHighBound).