![]() |
Inkompatible Typen: Cardinal und String
hi, ich bin echt geschafft, warum geht das nicht!? :
Delphi-Quellcode:
bei GetFileSize hängts:
var
bildpfad, bildname, bildendung: String; bildsize: Integer; Memo.Lines:=ExplorerDrop1.FileNames; bildpfad:=Memo.Lines[0]; bildname:=ExtractFileName(bildpfad); bildendung:=ExtractFileExt(bildname); bildsize:=GetFileSize(bildpfad); Zitat:
|
Re: Inkompatible Typen: Cardinal und String
Win SDK sagt zum Thema GetFileSize folgendes: The GetFileSize function retrieves the size, in bytes, of the specified file.
Code:
DWORD GetFileSize(
HANDLE hFile, // handle of file to get size of LPDWORD lpFileSizeHigh // address of high-order word for file size ); Du übergibst den Dateinamen, verlangt ist aber das Handle zur Datei :) Gruß Stephan :dance: |
Re: Inkompatible Typen: Cardinal und String
Die Fehlermeldung sagt doch eigentlich schon alles. Da muss wohl eine Konvertiering von einen Datentyp in einen anderen vorgenommen werden, damit der Wert zugewiesen werden kann.
Allerdings kann es nicht in der Zeile klemmen:
Delphi-Quellcode:
Integer und Cardinal sind zuweisungskompatibel.
bildsize:=GetFileSize(bildpfad);
Sollte es doch dort klemmen, könnte ich mir nur vorstellen, dass bildsize (was ist denn das eigentlich für ein Sprach-Mischmasch in der Benennung der Varaiblen? :gruebel:) vorher als String deklariert war und nach dem Ändern die zugehörige kompilierte Unit (dcu-Datei) nicht neu kompiliert wurde. Sollte das der fall sein, lösch sie mal oder erzwing durch "build all" eine neu Kompilierung der Unit. OK, vergess das hier. Steve hat recht. :roll: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz