由于我正在编写一个程序,该程序最终将运行在从相同项目文件编译的Windows和Linux环境中,因此我想测试并了解操作系统指令的性能如何。所以,我写了一个示例代码。代码似乎意外运行,或者只是我的想象。Delphi Prism中的操作系统指令
下面是代码:
method MainForm.ControlBtn_Click(sender: System.Object; e: System.EventArgs);
begin
{$IFDEF linux}
MessageBox.Show('This is Linux. Horay!!!', 'mypro',MessageBoxButtons.yesno);
{$ENDIF}
{$IFDEF WIN32}
MessageBox.Show('This is Win32. Horay!!!', 'mypro',MessageBoxButtons.yesno);
{$ENDIF}
{$IFDEF CLR}
MessageBox.Show('This is .NET Framework. Horay!!!', 'mypro',MessageBoxButtons.yesno);
{$ENDIF}
end;
现在,当我在Windows上运行这种方法,会弹出一个消息框,“这是.NET框架。 Horay!”我有点期待它是在Windows上运行的。当我在Mono下的Linux上运行它时,它弹出一个消息框,其中包含相同的消息:“这是.NET FrameWork。Horay !!!”我期待看到Linux消息,这是“这是Linux,Horay !!!”如果此代码运行正常,那么如果您需要执行仅受Linux或Mac或Windows支持的不同方法,您如何检查运行哪个平台的程序。
@塞巴斯蒂安,伟大的工程谢谢。 – ThN