设计时包无法构建 - 找不到文件:'Graphics.dcu'

时间:2012-01-10 00:33:49

标签: delphi scope custom-controls delphi-xe2

在Delphi XE2中,我在一对设计/运行时包中有一个控件。最初,一切都很好。我已经多次建造了它们。突然间没有任何警告,设计时间包开始在我的一个单位抱怨我Graphics单位在我建造时丢失了。 Graphics是一个标准单位,但在这一个地方找不到。我甚至没有对这个单位做过任何改变,据我所知,任何可能影响这个的改变。

这里只是本单元顶部(界面)的用途:

uses
  Graphics, ColorConv, Classes, Dialogs, ZLib;

正如您所看到的,它是一个非常简单的单元,我只对这个项目进行了非常简单的更改。有什么可以让它开始抱怨这个?

奇怪的是,如果我安装它一切正常,它就不会构建。

有相当多的代码,我不想发布整个内容。

3 个答案:

答案 0 :(得分:28)

狂野猜测:它需要Vcl.命名空间前缀?

答案 1 :(得分:5)

检查Tools->Options->Environment Options->Delphi Options->Library中的路径,尤其是Library PathBrowsing Path设置。我安装XE2的默认值(不包括那些由第三方组件和我自己的东西添加的):

库:

c:\program files (x86)\embarcadero\rad studio\9.0\lib\Win32\release;c:\program files (x86)\embarcadero\rad studio\9.0\Imports;C:\Users\Public\Documents\RAD Studio\9.0\Dcp;c:\program files (x86)\embarcadero\rad studio\9.0\include;

浏览:

$(BDS)\SOURCE\VCL;$(BDS)\source\rtl\common;$(BDS)\SOURCE\RTL\SYS;$(BDS)\source\rtl\win;$(BDS)\source\ToolsAPI;$(BDS)\SOURCE\IBX;$(BDS)\source\Internet;$(BDS)\SOURCE\PROPERTY EDITORS;$(BDS)\source\soap;$(BDS)\SOURCE\XML;$(BDS)\source\db;$(BDS)\source\Indy10\Core;$(BDS)\source\Indy10\System;$(BDS)\source\Indy10\Protocols;$(BDS)\source\fmx;$(BDS)\source\databinding\components;$(BDS)\source\databinding\engine;$(BDS)\source\databinding\graph;$(BDS)\source\fmi;$(BDS)\source\data;$(BDS)\source\data\ado;$(BDS)\source\data\bde;$(BDS)\source\data\cloud;$(BDS)\source\data\datasnap;$(BDS)\source\data\dbx;$(BDS)\source\data\dsnap;$(BDS)\source\data\Test;$(BDS)\source\data\vclctrls;

此外,由于您是XE2的新用户,您可能需要查看(在IDE之外)是否已定义PLATFORM的环境变量。一些PC制造商(HP作为一个特例)在他们的计算机上定义了这个变量,它干扰了IDE的要求。 (IDE使用PLATFORM作为用于不同平台的路径中的临时环境变量,如果在IDE外部预定义了一个环境变量,则会失败。)您可以通过打开命令提示符并键入SET PLATFORM并点击<来进行检查。 KBD>输入。如果有一个预先定义的,它可能导致各种难以追踪的问题;你可以在我遇到的每台机器上安全地删除它。 (右键单击My ComputerStart->Computer,选择PropertiesAdvanced System SettingsEnvironmental Variables。)

答案 2 :(得分:3)

如果项目中有多个图形声明(或其他VCL单位,如:控件,表单......),则可以将VCL命名空间添加到项目中
如下:

project menu-->options-->delphi compiler->>add in "unit scope names" value "Vcl"