Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.049 Beiträge
 
Delphi 12 Athens
 
#3

AW: Alle Fenster jedes Threads einer Anwendung

  Alt 22. Aug 2014, 11:01
[add, weil zu langsam]
Es wäre ja zu schön, wenn bei solchen Funktionen nicht nur Pointer, sondern die richtigen Typen deklariert wären, wenn würde der Compiler sowas gleich bemängeln .
Und ...
[/add]

TDWordList ist doch bestimmt als Pointer auf array[0..0] of DWord deklariert?
Wenn ja, dann gibt es natürlich ein Problem, wenn du auf Indize über 0 zugreifen willst, sobald die Beriechsprüfung aktiv ist.
(ich war zwar mal der Meinung, daß Delphi bei 0..0 die Bereichsprüfung für dieses Array als Sonderfall deaktiviert, aber das macht es leider doch nicht )

mögliche Lösungen:
- Bereichsprüfung für diese Prozedur deaktiveren (Compilerschalter)
- Bereichsprüfung global deaktivieren (Projektoptionen)
- Andere Typdefinition verwenden (z.B. Pointer auf array[0..($7fffffff - 2*SizeOf(NativeInt)) div SizeOf(DWORD) - 1] of DWORD aka array[0..$1ffffffa] of DWORD )
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (22. Aug 2014 um 11:13 Uhr)
  Mit Zitat antworten Zitat