System.SysUtils.FileCreate

Aus Appmethod Libraries
Wechseln zu: Navigation, Suche

Object Pascal

function FileCreate(const FileName: string): THandle;
function FileCreate(const FileName: string; Rights: Integer): THandle;
function FileCreate(const FileName: string; Mode: LongWord; Rights: Integer): THandle;

C++

extern DELPHI_PACKAGE NativeUInt __fastcall FileCreate(const System::UnicodeString FileName)/* overload */;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
System.SysUtils.pas
System.SysUtils.hpp
System.SysUtils System.SysUtils

Beschreibung

Erstellt eine neue Datei.

FileCreate erzeugt eine neue Datei mit dem angegebenen Namen. Bei Erfolg gibt FileCreate einen nicht-INVALID_HANDLE_VALUE-Wert zurück, der als Handle für die neue Datei verwendet werden kann. Der Rückgabewert INVALID_HANDLE_VALUE gibt an, dass ein Fehler aufgetreten ist.

Der Rückgabetyp für FileCreate seit Object Pascal 2010 wurde von einem Integertyp in THandle geändert.

 var
   MyFile: THandle;
 begin
   MyFile := FileCreate('C:\temp\bla.txt');
   if MyFile = INVALID_HANDLE_VALUE then
     raise Exception.Create('File already exists');
 end;

Um das frühere Verhalten zu emulieren, könnten Sie den Rückgabewert von FileCreate in NativeInt umwandeln. Dann gibt ein Rückgabewert von -1 einen Fehler an. Im folgenden Codefragment wird dies gezeigt.

var
  MyFile: Integer; // for 32bit platform.
begin
  MyFile := NativeInt(FileCreate('C:\temp\bla.txt'));
  if MyFile = -1 then
    raise Exception.Create('File already exists');
end;

Hinweis: Unter Windows werden die Variable FileAccessRights und der Parameter Rights ignoriert.

Siehe auch

Codebeispiele