AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi EOutOfResources: 'Fehler bei Einfügen von RichEdit -Zeile'
Thema durchsuchen
Ansicht
Themen-Optionen

EOutOfResources: 'Fehler bei Einfügen von RichEdit -Zeile'

Ein Thema von TStringlist · begonnen am 31. Okt 2005 · letzter Beitrag vom 17. Dez 2005
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#11

Re: EOutOfResources: 'Fehler bei Einfügen von RichEdit -Zei

  Alt 1. Nov 2005, 00:18
Hallo,

Zitat von TStringlist:
Zitat von Lannes:
Der Fehler wird ursächlich ausgelöst durch Insert an Zeile 0.
Stimmt leider nicht. Wenn ich die ganzen Lines.Insert-Zeilen alle gleichmäßig eins nach oben zielen lasse und mit SelText dann auch entsprechend Zeile 4 ändere, dann haben wir wieder das fast gleiche Fehlerbild wie vorher.
ja, da muss ich Dir zustimmen
aber das muss doch von irgendwelchen Bedingungen abhängen, Zeilenanzahl, Zeichenanzahl ...

Zitat von teebee:
Merkwürdigerweise funktioniert alles prima, wenn Du nur bis 2134 gehst...
Das ist auch nicht ganz richtig

Wenn ich den Code wie folgt abändere, dann gibt es keinen Fehler:
Delphi-Quellcode:
AStr := '---------------------';
RichEdit1.Lines.Add(AStr + '--------------'+'--------------');//<--------- um 14 Zeichen erweitert
for I := 1 to 2440 do RichEdit1.Lines.Add(AStr);
  Lines.Insert(0,'on: ' + '00:00:00 ');
  Lines.Insert(2,'on: ' + DateToStr(Now) + ' 00:00');
  Lines.Insert(3,'on: ' + DateToStr(Now) + ' 24:00 00:00:00');
Diese 14 Zeichen ist genau die Länge hinter der '24' die bei einem Fehler verleiben
  • on: 00:00:00
    -----------------------------------
    on: 31.10.2005 00:00
    on: 31.10.2005 24:00 :00:00
    ---------------------
    ---------------------
    ---------------------
    ---------------------
    -------24--------------
    ---------------------

Ändere ich nun wiederum die Insert-Index auf :
Delphi-Quellcode:
Lines.Insert(1,'on: ' + '00:00:00 ');
Lines.Insert(3,'on: ' + DateToStr(Now) + ' 00:00');
Lines.Insert(4,'on: ' + DateToStr(Now) + ' 24:00 00:00:00');
und füge die '24' entsprechend in Zeile 4 ein, verschiebt sich die 24 an eine andere Stelle.
Nehme ich nun die Anzahl der Zeichen hinter der '24' und baue sie entsprechend in den Code ein,
ist der Fehler wieder beseitigt.

Wer Lust hat kann gerne versuchen die Zusammenhänge/Ursache zu finden, ich gebs auf.
Ob es nun an der Dll direkt oder an der Kapselung des RichEdit durch Delphi liegt? kA.

Ich werd doch wohl weiterhin die Daten wie gewohnt über einen Stream ins RichEdit schreiben,
damit hab ich diese Probleme bisher noch nicht gehabt.
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: EOutOfResources: 'Fehler bei Einfügen von RichEdit -Zei

  Alt 17. Dez 2005, 17:51
Also, mit einer RichEd20.dll ab der Version 4.0 verschwindet dieser Error übrigens. Normal hat ein W2k-Rechner ja nur eine solche DLL der Version 3.0 in C:\WINNT\system32 ...und womit er also für die oben beschriebene Fehlererscheinung durchaus anfällig ist!

Trotzdem aber: In C:\Programme\Gemeinsame Dateien\Microsoft Shared\Office10 sollte man da auch zusätzlich noch eine Riched20.dll der Version 4.0 vorfinden. Die produziert nicht nur diesen Fehler nicht mehr, sondern ist bei größeren Texten sogar auch noch etwas schneller. Wahrscheinlich wollte MS damit bzgl. der eigenen Office-Anwendungen allen Eventualitäten lieber gleich zuvorkommen.

Will man beim Weitergeben einer eigenen Anwendung (die intern mit solchen Befehlskombinationen agiert und bei der theoretisch auch mal so große Texte vorkommen können) dann auf Nummer Sicher gehen, wird einem also nichts anderes übrig bleiben als diese Dll-Version 4.0 im Zielverzeichnis mit zu entpacken. Es wird wohl erlaubt sein, die dann einfach mit weiterzugeben, denn sie ist ja im besagten ...\Microsoft Shared\Office10-Folder des Ziel-PCs sowieso schon vorhanden (...und alternativ/notfalls könnte man sie ja auch von dort einfach ins Zielverzeichnis rüberkopieren).

MfG
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 13:32 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