25 Stimmen

Entwurfszeitpaket kann nicht erstellt werden - Datei nicht gefunden: 'Graphics.dcu'

In Delphi XE2 habe ich ein einzelnes Steuerelement in einem Paar von Entwurfs-/Laufzeitpaketen. Ursprünglich funktionierte alles gut. Ich habe jedes dieser Pakete bereits viele Male erstellt. Plötzlich und ohne Vorwarnung beschwerte sich das Design Time Package in einer meiner Units, dass die Graphics Einheit fehlt, wenn ich baue. Graphics ist eine Standardeinheit, aber sie wird nicht an diesem einen Ort gefunden. Ich habe noch nicht einmal irgendwelche Änderungen an diesem Gerät vorgenommen, und soweit ich weiß, keine Änderungen, die dies beeinflussen könnte.

Hier sind nur die Anwendungen an der Oberseite (Schnittstelle) dieses Geräts:

uses
  Graphics, ColorConv, Classes, Dialogs, ZLib;

Wie Sie sehen können, handelt es sich um eine sehr einfache Einheit, und ich nehme nur sehr einfache Änderungen an diesem Projekt vor. Was könnte dazu führen, dass es plötzlich anfängt, sich darüber zu beschweren?

Das Seltsame ist, dass alles gut funktioniert, wenn ich es installiere, es lässt sich nur nicht bauen.

Der Code ist ziemlich umfangreich, und ich würde es hassen, den gesamten Code zu posten.

33voto

Francesca Punkte 21286

Wilde Vermutung: es braucht die Vcl. Namespace-Präfix?

8voto

Bashar Issa Punkte 101

Wenn es mehrere Deklarationen von Grafiken (oder anderen VCL-Einheiten wie: Steuerelemente, Formulare ...) in Ihrem Projekt gibt, können Sie Ihrem Projekt einen VCL-Namensraum hinzufügen
wie folgt:

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

5voto

Ken White Punkte 120217

Überprüfen Sie Ihre Pfade in Tools->Options->Environment Options->Delphi Options->Library , insbesondere die Library Path y Browsing Path Einstellungen. Die Standardeinstellungen für meine XE2-Installation (mit Ausnahme derer, die durch Komponenten von Drittanbietern und mein eigenes Material hinzugefügt wurden):

Bibliothek:

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;

Durchsuchen:

$(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;

Da Sie neu in XE2 sind, möchten Sie vielleicht auch überprüfen (außerhalb der IDE), ob Sie eine Umgebungsvariable für PLATFORM definiert. Einige PC-Hersteller (z.B. HP) definieren diese Variable auf ihren Computern, und sie stört die Anforderungen der IDE. (Die IDE verwendet PLATFORM als temporäre Umgebungsvariable in Pfaden, die für verschiedene Plattformen verwendet werden, was fehlschlägt, wenn es außerhalb der IDE eine vordefinierte gibt). Sie können dies überprüfen, indem Sie eine Eingabeaufforderung öffnen und Folgendes eingeben SET PLATFORM und schlagen Enter . Wenn eine vordefiniert ist, kann sie verschiedene schwer aufzuspürende Probleme verursachen; Sie können sie auf jedem Rechner, der mir begegnet ist, sicher entfernen. (Rechtsklick My Computer o Start->Computer wählen Properties , Advanced System Settings , Environmental Variables .)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X