Einzelnen Beitrag anzeigen

HJay

Registriert seit: 7. Dez 2009
172 Beiträge
 
Delphi XE7 Enterprise
 
#1

Erklärung zu Compiler-Hinweis?

  Alt 25. Okt 2012, 12:35
Ich stelle gerade ein projekt von Delphi 6 auf Delphi 2010 um.

In einer eigenen, kurzen Unit verwende ich:

Code:
uses Forms, SysUtils;

initialization

DeleteFile(LogFile);
Der Compiler gibt den folgenden Hinweis aus: "H2443 Inline-Funktion "DeleteFile" wurde nicht expandiert, weil Unit 'Windows' in der USES-Liste nicht angegeben ist."

Was soll dieser Hinweis bedeuten? DeleteFile stammt aus SysUtils und nimmt ein String-Argument. Alles klappt, wie es soll. Warum kümmert sich der Compiler darum, dass es in der Unit Windows möglicherweise eine ähnliche lautende Prozedur gibt?

Sind die Prozeduren funktionell gleichwertig? Ich habe immer die aus SysUtils verwendet. Hat eine Vorteile gegenüber der anderen?

Die Prozedur Windows.DeleteFile nimmt ein PChar-Argument, was ich ja eigentloich auch blöde finde. Was spricht dagegen, bei SysUtils.DeleteFile zu bleiben?

Was soll der Hinweise? Muss ich ihn beachten?
  Mit Zitat antworten Zitat