Hallo Stefan,
die vom Compiler gelieferte Fehlermeldung ist verständlich, da du durch das Kopieren der Typdefinition einen
neuen Typen erzeugst. Obwohl beide Typen den gleichen Aufbau besitzen, sieht der Compiler sie als unterschiedlich an. Gib deinem dynamischen Array einen Namen und lagere die Typdefinition in eine weitere
Unit aus, die du dann in deinen beiden Units in die USES-Anweisung aufnimmst:
Delphi-Quellcode:
unit Typen;
interface
type
TZeitserver =
record
IP:
String;
LastPing:
String;
LastCheck:
String;
end;
TDynZeitserverArray =
array of TZeitserver;
implementation
end.
Das Kopieren von Arrays kannst du - wie von Dust Signs beschrieben - mit dem Copy-Befehl durchführen. Start und Länge mußt du dabei nicht angeben:
Delphi-Quellcode:
var
Original, Kopie : TDynZeitserverArray;
begin
Kopie := Copy(Original);
end;
Eine einfache Zuweisung der Zeiger würde lediglich den Referenzzähler des Original-Arrays erhöhen. Danach wäre jede Änderung, die du mit einem der beiden Arrrays durchführst, auch im jeweils anderen sichtbar.
Gruß Hawkeye