AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE [Fataler Fehler] Interner Fehler: L3170

[Fataler Fehler] Interner Fehler: L3170

Ein Thema von schöni · begonnen am 1. Mai 2012 · letzter Beitrag vom 1. Mai 2012
Antwort Antwort
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#1

[Fataler Fehler] Interner Fehler: L3170

  Alt 1. Mai 2012, 11:26
Hallo,

diesen Fehler erhalte ich mit D7 Personal Build 4.453 bei folgendem Quelltext:

Delphi-Quellcode:
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 Eventhandler "RegexMatch" und "RegexReplace" wurden von Hand erstellt, da die Klasse TPerlRegex keine Komponente ist.

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:

{$LINK pcre\pcre_get.obj} "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.

Muss ich noch irgendwas anderes machen?
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.288 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: [Fataler Fehler] Interner Fehler: L3170

  Alt 1. Mai 2012, 12:16
Was deine Frage nach neueren Delphiversionen angeht: Die bei Delphi XE+ mitgelieferte Version erzeugt diesen Fehler bei mir nicht, nein.

Bei Delphi 7 bekomme ich einen internen Fehler sobald ich den Konstruktor aufrufe. Der restliche Quelltext hat mit dem Fehler nix zu tun.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz