System.SysUtils.FileCreate

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

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 Winapi::Windows::THandle __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 Delphi 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