2012-01-10 26 views
19

Delphi XE2では、デザイン/ランタイムパッケージのペアで1つのコントロールを使用しています。もともと、すべてうまくいきました。私はすでに何度もそれらを作りました。突然警告なしで、設計時のパッケージが私のユニットの一つで、私がビルドするときにGraphicsユニットが見つからないと不満を募らせ始めました。 Graphicsは標準ユニットですが、この1つの場所からは見つかりません。私はこのユニットに何ら変更を加えていないし、知っている限り、これに影響を与える可能性のある変更はありません。ここでデザイン時パッケージのビルドに失敗しました - ファイルが見つかりません: 'Graphics.dcu'

は、このユニットの上部(インタフェース)でちょうど用途です:

uses 
    Graphics, ColorConv, Classes, Dialogs, ZLib; 

あなたが見ることができるように、それは非常に単純なユニットだし、私はこのプロジェクトに非常に簡単な変更を行います。これでどこからでも不平を言ってしまうことがありますか?

奇妙なことは、それはすべて私がそれをインストールした場合、それだけでビルドしていない正常に動作していることです。

は、コードのかなりあります、と私は全体の事を掲示しなければならないことを憎みます。

+2

@Downvoter:どうしてこれが役に立たないのか説明してください。 –

+1

+1。あなたは確かに同じ状況で唯一のものではなく、他の人がXE2に移ったときに他の人を助けるでしょう。 –

答えて

25

ワイルド推測:それはVcl.名前空間接頭辞を必要ですか?

+0

それはそうしました - 私は名前空間のプレフィックスを初めて使っています:D –

+17

'Vcl'が' Unit Scope Names'リストに含まれていることを確認するならば、 'Vcl.'という接頭辞をコードに追加する必要はありません代わりにProjctオプション。 –

+0

@fran +1、Vclでどのように動作しますか?接頭辞?私は混乱しています – PresleyDias

4

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の新機能では、PLATFORMの環境変数が定義されている場合は、(IDEの外で)確認することができます。一部のPCメーカ(特定の例としてHP)は、この変数をコンピュータ上で定義し、IDEの要件を妨げています。 (IDEは、IDEの外事前定義1があるかどう失敗し、異なるプラットフォームのために使用するパスが一時的に環境変数としてPLATFORMを使用しています。)あなたは、コマンドプロンプトを開いてSET PLATFORMを入力してを入力し押すことで確認することができます。 1つがあらかじめ定義されていると、さまざまなハード・トラブルを追跡する可能性があります。私が実行したすべてのマシンで安全に削除することができます。プロジェクトに、あなたはVCLの名前空間を追加することができます。グラフィックスのいくつかの宣言(コントロール、フォーム...など他のVCLユニット)が存在する場合

+0

他の答えは私の問題を修正:D –

2

(。またはStart->ComputerPropertiesAdvanced System SettingsEnvironmental Variablesを選択し右クリックします)プロジェクトに
次のように:

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

関連する問題