Delphi 笔记(一) Could not create output file

Could not create output file <Filename> 不能建立输出文件<Filename>

exe文件不能编译,问题可能有以下几种情况:

        1、该文件正在运行。(直接关掉重新运行)

        2、工程配置的路径不存在或被修改或者是用户没有权限写入

        3、磁盘满了,可能性很低

这里是第二种情况,解决方法:

        在delphi中有两处涉及到路径的配置,一个是菜单tools\options中的environment options/delpihi options/library位置,使用者可以设置库文件查找路径(library path),包输出路径,dcp文件的输出目录,源代码浏览路径等,我这里用到两个,一个是package output directory,另外一个是dcp output directory。前者是bpl包的输出目录,后者是dcu文件的输出目录。这个是系统默认的输出设置,我们这里也不要去修改。

        另外一处是project本身的options设置,这里和默认输出有些不一样,设置的是输出目录(output directory),单元文件输出目录,查找路径,dcp输出目录等。我们这里要做如下的设置:

output directory:留空,使用全局设置

dcp output directory:留空,使用全局设置

unit output directory:所有工程设置成同一个输出,比如..\output。记住要设置路径,否则别人拿到你的工程一样会麻烦。

search path:该位置用于告诉编译器如何寻找pas、dcu文件。一定要包含unit output directory的内容,比如..\output。看情况加入其他的查找位置。

这样设置之后,整体编译就不会出问题了。原理很简单:以上两个留空的设置会自动使用相应的全局设置,而这两个全局设置已经被包含在默认的全局查找路径中了。 同样的很多类似的 not found问题也可以试着用同样的方法修改路径来尝试解决。

-------------------------------------------------------------------

以下附录是delphi相关文件后缀的含义,摘自这里

.dcu: (delphi compiled unit)源代码编译之后的输出文件,一个源代码文件对应一个dcu文件,只有源代码文件被修改之后才会重新编译,用于加速编译过程。

.dfm: (delphi form)和pas文件配合,定义界面。

.dcp: 二进制映像文件,包含符号信息和ide需要的其他附加信息,ide构建工程的时候需要这个文件。

.bpl或者.dpl:设计时包或者运行时包。其实是一个加入了delphi特性的dll文件。

猜你喜欢

转载自blog.csdn.net/qq_41661878/article/details/119819160