如何在不安装IDE的情况下编译并运行此Delphi代码?
据说生成一个winform:
var
F : TForm;
L : TLabel;
begin
F := TForm.Create(Application);
L := TLabel.Create(F);
L.Parent := F; // Needed to have it show up on the form.
L.Left := 50;
L.Top := 50;
L.Caption := 'This is an example';
F.Show;
end;
事实上,这是我以前的问题。
如果是C程序,我可以这样运行它:
> gcc foo.c -o foo.exe
> foo.exe
在Delphi中我怎样才能做到这一点?
为了编译Delphi代码,你需要一个编译器。 Delphi没有免费的版本,除非你能找到一个旧的版本,否则你不得不购买Delphi。 Delphi带有一个像gcc这样的命令行编译器,并且可以在没有IDE的情况下编译程序。
德尔福2006年和win32之前:
dcc32 YourProject.dpr
Delphi 2006和之前的.Net:
dccil YourProject.dpr
德尔福2007年及之后:
msbuild YourProject.dproj
这将导致一个编译的二进制文件,如果是EXE,你可以像你习惯的那样运行它。
德尔福有免费的替代产品,如FreePascal和他们的免费IDE Lazarus。 我没有检查过自己,但我很确定它也带有一个命令行编译器。
您应该将此代码写入DPR文件。 DPR文件的一般结构如下所示:
program {ProgramName};
uses {List of used units};
begin
{Your code}
end.
所以对于上面的代码你的DPR文件将是这样的:
program Project1;
uses
Forms, StdCtrls;
var
F : TForm;
L : TLabel;
begin
F := TForm.Create(nil);
try
L := TLabel.Create(F);
L.Parent := F; // Needed to have it show up on the form.
L.Left := 50;
L.Top := 50;
L.Caption := 'This is an example';
F.ShowModal;
finally
F.Free;
end;
end.
您可以在文本编辑器中键入此代码,并将其保存为Project1.dpr。
现在你可以使用Delphi的命令行编译器来编译它:
dcc32.exe Project1.dpr
更简单,公正
dcc32 "name of the project"
即使程序存在10个单元之外,编译器也会自动解析它(如果在当前单元的搜索路径中)(请参阅dcc32.cfg,或者使用-U和-I添加目录)。 请注意,Delphi的某些“免费”资源管理器版本不带有cmdline编译器。
对于.NET,它是dccil。
当然,如果你与gcc比较,Free Pascal / Lazarus是更合理的选择(但不适用于.NET)。
链接地址: http://www.djcxy.com/p/59653.html上一篇: How to compile and run this Delphi code without installing an IDE?
下一篇: Logging exceptions thrown by message listeners for Spring AMQP