Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi CopyFileEx und Codeoptimierung XE5 (https://www.delphipraxis.net/179923-copyfileex-und-codeoptimierung-xe5.html)

Sir Rufo 11. Apr 2014 11:39

AW: CopyFileEx und Codeoptimierung XE5
 
Die Erklärung ist auch unter CopyFileEx und Windows Data Types zu finden.

Delphi-Quellcode:
pbCancel
ist vom Typ ein
Delphi-Quellcode:
LPBOOL
, der wiederum ein Pointer auf ein
Delphi-Quellcode:
BOOL
ist und das ist vom Typ ein
Delphi-Quellcode:
INT
.

Ein
Delphi-Quellcode:
BOOLEAN
ist ein
Delphi-Quellcode:
BYTE
.

Ich habe aber auch erst jetzt nachgesehen ;)

Der schöne Günther 11. Apr 2014 12:28

AW: CopyFileEx und Codeoptimierung XE5
 
Alter Schwede, den Fehler habe ich dann aber auch schon ein paar mal gemacht! :shock:

Bislang ist mir noch nichts um die Ohren geflogen...

DeddyH 11. Apr 2014 12:28

AW: CopyFileEx und Codeoptimierung XE5
 
Bei LPBOOL böte sich der generische Typ BOOL an (in Windows.pas als LongBool deklariert), dann sollte das doch automatisch passen, oder?

Uwe Raabe 11. Apr 2014 12:33

AW: CopyFileEx und Codeoptimierung XE5
 
Zitat:

Zitat von DeddyH (Beitrag 1255330)
Bei LPBOOL böte sich der generische Typ BOOL an (in Windows.pas als LongBool deklariert), dann sollte das doch automatisch passen, oder?

Genau dafür gibt es den ja auch.

DeddyH 11. Apr 2014 12:34

AW: CopyFileEx und Codeoptimierung XE5
 
Ja eben :)

wurzelzwerg 11. Apr 2014 13:09

AW: CopyFileEx und Codeoptimierung XE5
 
Das perverse war ja dass es bei mir ohne Codeoptimierung funktioniert hat. :shock:

Uwe Raabe 11. Apr 2014 13:34

AW: CopyFileEx und Codeoptimierung XE5
 
Zitat:

Zitat von wurzelzwerg (Beitrag 1255338)
Das perverse war ja dass es bei mir ohne Codeoptimierung funktioniert hat. :shock:

Das liegt wohl eher an den zufälligen Werten in den 3 höheren Bytes, die mit und ohne Optimierung halt andere Inhalte haben. War das jetzt sowas wie ein Mini-Heartbleed?

wurzelzwerg 11. Apr 2014 13:54

AW: CopyFileEx und Codeoptimierung XE5
 
Random Bug :lol:
Na gut, habs grad noch überlebt :stupid: :cheers:

himitsu 11. Apr 2014 16:33

AW: CopyFileEx und Codeoptimierung XE5
 
Ich finde es ja praktisch, daß inzwischen immer mehr dieser APIs entweder direkt mit einem VAR-Parameter deklariert wurden, oder dass es davon eine entsprechende überladene Version gibt.

Dort schlägt dann die Typprüfung des Compilers zu und der Fehler wird schnell entdeckt.

uligerhardt 12. Apr 2014 16:22

AW: CopyFileEx und Codeoptimierung XE5
 
Zitat:

Zitat von himitsu (Beitrag 1255364)
Ich finde es ja praktisch, daß inzwischen immer mehr dieser APIs entweder direkt mit einem VAR-Parameter deklariert wurden, oder dass es davon eine entsprechende überladene Version gibt.

Dort schlägt dann die Typprüfung des Compilers zu und der Fehler wird schnell entdeckt.

Wenn man in den Compileroptionen "Typisierter Adressoperator" einschaltet, hätte der Compiler hier vermutlich auch gemeckert. Ärgerlich, dass das defaultmäßig deaktiviert ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz