![]() |
[Fataler Fehler] Interner Fehler: L3170
Hallo,
diesen Fehler erhalte ich mit D7 Personal Build 4.453 bei folgendem Quelltext:
Delphi-Quellcode:
Die Eventhandler "RegexMatch" und "RegexReplace" wurden von Hand erstellt, da die Klasse TPerlRegex keine Komponente ist.
unit regexmain;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, PerlRegEx, SynEdit, SynMemo, SpTBXDkPanels, SpTBXItem, SpTBXControls, StdCtrls, TntStdCtrls, SpTBXEditors, TB2Item, TB2Dock, TB2Toolbar, Menus; type TForm1 = class(TForm) MainMenu1: TMainMenu; Datei1_OLD: TMenuItem; Neu1_OLD: TMenuItem; LadenZieldatei1_OLD: TMenuItem; LadenderRegexDatei1_OLD: TMenuItem; N1_OLD: TMenuItem; SpeichernRegexDatei1_OLD: TMenuItem; SpeichernRegexDateials1_OLD: TMenuItem; N2_OLD: TMenuItem; Beenden1_OLD: TMenuItem; Bearbeiten1_OLD: TMenuItem; Rckgngig1_OLD: TMenuItem; Widerrufen1_OLD: TMenuItem; N3_OLD: TMenuItem; Ausschneiden1_OLD: TMenuItem; Kopieren1_OLD: TMenuItem; Einfgen1_OLD: TMenuItem; Lschen1_OLD: TMenuItem; Allesmarkieren1_OLD: TMenuItem; Suchen1_OLD: TMenuItem; Ausdruck1_OLD: TMenuItem; SpTBXDock1: TSpTBXDock; SpTBXToolbar1: TSpTBXToolbar; Datei1: TTBSubmenuItem; Neu1: TTBItem; LadenZieldatei1: TTBItem; LadenderRegexDatei1: TTBItem; N1: TTBSeparatorItem; SpeichernRegexDatei1: TTBItem; SpeichernRegexDateials1: TTBItem; N2: TTBSeparatorItem; Beenden1: TTBItem; Bearbeiten1: TTBSubmenuItem; Rckgngig1: TTBItem; Widerrufen1: TTBItem; N3: TTBSeparatorItem; Ausschneiden1: TTBItem; Kopieren1: TTBItem; Einfgen1: TTBItem; Lschen1: TTBItem; Allesmarkieren1: TTBItem; Suchen1: TTBSubmenuItem; Ausdruck1: TTBItem; SpTBXPanel1: TSpTBXPanel; SpTBXLabel1: TSpTBXLabel; cbxRegexInput: TSpTBXComboBox; SpTBXSpeedButton1: TSpTBXSpeedButton; SpTBXStatusBar1: TSpTBXStatusBar; SpTBXPanel2: TSpTBXPanel; SpTBXSplitter1: TSpTBXSplitter; SpTBXPanel3: TSpTBXPanel; Regexes: TSynMemo; Destfile: TSynEdit; procedure SpTBXSpeedButton1Click(Sender: TObject); procedure Beenden1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private-Deklarationen } FRegex: TPerlRegEx; procedure RegexMatch(Sender: TObject); procedure RegexReplace(Sender: TObject; var ReplaceWith: String); public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.SpTBXSpeedButton1Click(Sender: TObject); begin if cbxRegexInput.Text<>'' then begin if FRegex.FoundMatch then begin end else ; end; end; procedure TForm1.Beenden1Click(Sender: TObject); begin Application.Terminate; end; procedure TForm1.FormCreate(Sender: TObject); begin FRegex := TPerlRegEx.Create; FRegex.OnMatch := RegexMatch; FRegex.OnReplace := RegexReplace; end; procedure TForm1.FormDestroy(Sender: TObject); begin FRegex.Free; end; procedure TForm1.RegexMatch(Sender: TObject); begin // end; procedure TForm1.RegexReplace(Sender: TObject; var ReplaceWith: String); begin end; end. Die Units des TPerlregex Paketes habe ich im Ordner ..\..\Borland\Delphi7\Source\TPerlRegex\ untergebracht und dem Projektsuchpfad hinzugefügt. Das Projekt selber befindet sich in ..\..\Borland\Delphi7\Projects\Regex\. Ist dieser Interne Fehler in späteren Delphi Versionen beseitigt oder muss ich eh irgendwas anderes beachten, damit ich das Projekt übersetzen kann? Der Quelltext sagt mir, das die Unit Perlregex die zum Paket gehörendende Unit "PCRE" voraussetzt, in der die Pfade zu den von ihr verwendeten .obj Dateien korrekt besetzt sein sollten. Ich sehe dort Zeilen wie:
Delphi-Quellcode:
"pcre" ist ein Unterverzeichnis im Ordner der Units "pcre" und "PerlRegex". So gehe ich davon aus, das die Objektdateien auch gefunden werden, da ich den Suchpfad ..\Source\TPerlRegex in den Projekteinstellungen hinzugefügt habe.
{$LINK pcre\pcre_get.obj}
Muss ich noch irgendwas anderes machen? |
AW: [Fataler Fehler] Interner Fehler: L3170
Was deine Frage nach neueren Delphiversionen angeht: Die bei Delphi XE+ mitgelieferte Version erzeugt diesen Fehler bei mir nicht, nein. :zwinker:
Bei Delphi 7 bekomme ich einen internen Fehler sobald ich den Konstruktor aufrufe. Der restliche Quelltext hat mit dem Fehler nix zu tun. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:33 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