当我在Delphi 2006下编译我的应用程序时,我收到以下警告[Pascal警告] - W1002符号'FileSetDate'特定于一个平台
我该怎么做才能抑制这个警告?
代码
MyLastError:= FileSetDate( Files[ i ].Handle, DateTimeToFileDate( arcDate ) );
Toon Krijthe.. 25
虽然DR的答案解决了警告,但这不是正确的解决方案.
您应该使用与平台无关的FileSetDate版本:
function FileSetDate(const FileName: string; Age: Integer): Integer; overload;
也在SysUtils.
虽然DR的答案解决了警告,但这不是正确的解决方案.
您应该使用与平台无关的FileSetDate版本:
function FileSetDate(const FileName: string; Age: Integer): Integer; overload;
也在SysUtils.
1)在项目选项中,您可以选择要查看的编译器消息.如果您不关心平台独立性,您可以在那里关闭平台警告.
2)另一种方法是禁用代码的某个部分的警告:
{$WARN SYMBOL_PLATFORM OFF} // Your code {$WARN SYMBOL_PLATFORM ON}
有关选项的完整列表,请查看主题为'$ WARN'的Delphi帮助文件
3)最后一种方式是添加
{$WARNINGS OFF} // Your code {$WARNINGS ON}
但这很危险,因为所有的警告都会受到抑制.
4)此外,正如其他答案已经建议的那样,你可以切换到平台独立变体,FileSetDate
它适用于文件名(即字符串),但据我所知,这不是你的问题.
您可以关闭平台单元和平台符号编译器警告.它们已过时(默认情况下在Delphi 2009中禁用).当有一个Delphi for Linux(Kylix)时,它们被引入.他们不再有意义了.特别是用Delphi Prism替换Delphi.NET.您可以在"项目选项"对话框(编译器消息)中为整个项目关闭它们.