![]() |
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
So hab nun den größten Teil der Codezeilen entfernt: Hier die lauffähige Unit16.
Delphi-Quellcode:
Die Prozedurdefinition, und der SetLength Aufruf passen nicht.
unit Unit16;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs; type TForm16 = class(TForm) //procedure ClearValues(Sender: TObject; var TotalEvap: array of real); -> wird im eigentlichen Code verwendet private { Private-Deklarationen } public { Public-Deklarationen } end; var Form16: TForm16; TotalEvap: array of real; implementation {$R *.dfm} {1. Programmabschnitt} //procedure TForm16.ClearValues; -> wird im eigentlichen Code verwendet begin //begin SetLength(TotalEvap,0); TotalEvap := nil; // ist faktisch identisch mit dem vorigen Befehl //end; {2... weitere Programmabschnitte} //initialization -> wird im eigentlichen Code verwendet //finalization -> wird im eigentlichen Code verwendet end. Danke für eure Hinweise! Zu: Zitat:
|
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Bei betätigung springt der Mauszeiger auf die Procedurdefinition im Quelltext Sonst hier die Aussage bei Bewegung des Mauszeigers über SetLength. |
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Die Fehlermeldung klingt doch eher so, als wären die Pfadeinstellungen vergurkt?
|
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Zitat:
Delphi-Quellcode:
program Project10;
{$APPTYPE CONSOLE} type TRealArray = array of Real; procedure ClearValues(Sender: TObject; var TotalEvap: TRealArray); begin SetLength(TotalEvap,0); TotalEvap := nil; end; var TotalEvap: TRealArray; begin ClearValues(nil, TotalEvap); end. |
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Zitat:
Ich hatte ebenfalls danach gesucht. Hatte hierrüber auch den Fehler (ähnlichen gefunden) ![]() Hier auch der Screenshot dazu. Ich habe nach der System.dcu gesucht und sie auch in dem entsprechendem Verzeichnis: C:\Program Files (x86)\Embarcadero\Studio\15.0\lib\win64\release gefunden. Nur scheint es, dass im Quelltext etwas nicht passt. Zitat:
|
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Zitat:
Ich werde deine Hinweise berücksichtigen und melde mich zurück! |
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo alle zusammen!
Also vielen dank Uwe für deine tatkräftige Unterstützung. Irgendwie steh ich auf der Leitung. Ich habe mehrere Varianten versucht und es treten jeweils immer verschiedne Fehler auf. Dies ist die letzte
Delphi-Quellcode:
Zum aktuellen Quellcode ist eine weitere Fehlermeldung ist im Anhang zu sehen.
unit Unit16;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs; type //TRealArray = array of Real; -> ist die Stelle hier korrekt (hier wird ein Datentyp deklariert, mit dem Typ Array (Feld) mit reelen Einträgen TForm16 = class(TForm) procedure TForm16.ClearValues(Sender: TObject);// -> fehlt hier etwas? [dcc32 Fehler] Unit16.pas(12): E2003 Undeklarierter Bezeichner: 'TForm16' private { Private-Deklarationen } public { Public-Deklarationen } end; var Form16: TForm16; TotalEvap:array of real; // Deklaration einer globalen Variable TotalEvap mit dem Datentyp (Feld) array mit reelen Einträgen implementation {$R *.dfm} {1. Programmabschnitt} procedure TForm16.ClearValues; //-> Definition der Procedur ClearFalues ([dcc32 Fehler] Unit16.pas(28): E2003 Undeklarierter Bezeichner: 'ClearValues') //var -> wird genutzt wenn nur in diesem Unterabschnitt Variablen genutzt werden //TotalEvap: TRealArray; //TotalEvap:array of real; begin //SetLength(TotalEvap,0); TotalEvap := nil; // ist faktisch identisch mit dem vorigen Befehl end; //var //TotalEvap: TRealArray;-> Der Parameter TotalEvap wird mit dem neuen selbsterzeugten Datentyp verknüpft. //begin //ClearValues(nil, TotalEvap); -> ClearValues wird aufgerufen und elemente werden auf Null gesetzt, und Totalevap Elemente werden eingfügt-> Verstehe diesn Audruck nicht zu 100% // end; end. Ziel es ist mittels der Procedur Clearvalues die globalen Variablen zum Start des Programms auf Null zusetzten. Besten Dank für eure Unterstüzung! Ich bleibe auf jeden Fall dran. |
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Delphi-Quellcode:
unit Unit16;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs; type TRealArray = array of Real; type TForm16 = class(TForm) procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } procedure ClearValues(var theArray: TRealArray); end; var Form16: TForm16; TotalEvap1: TRealArray; // Alle Arrays als TRealArray deklarieren! TotalEvap2: TRealArray; TotalEvap3: TRealArray; implementation {$R *.dfm} {1. Programmabschnitt} procedure TForm16.FormCreate(Sender: TObject); begin ClearArray(TotalEvap1); ClearArray(TotalEvap2); ClearArray(TotalEvap3); { alternativ aber auch einfacher } TotalEvap1 := nil; TotalEvap2 := nil; TotalEvap3 := nil; end; procedure TForm16.ClearValues(var theArray: TRealArray); begin theArray := nil; end; end. |
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Zitat:
|
AW: XE 7 Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr fehlt
Hallo Uwe,
vielen Dank für deine Hinweise! Ich habe deine Hinweise mit beachtet und nun ist diese Passage im Hauptprogramm compilierbar! Vorallem ist ebenfalls der am Anfang gennante Fehler: Error Meldung E2158 System-Unit veraltet oder beschädigt @Clr verschwunden! Nun gibt zwar jede Menge andere, aber ich denke die schaffe ich. Besten Dank an dich und andere Forumsbeitragende! Problem hat sich gelöst! :-D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz