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
 
TStringlist

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

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

  Alt 31. Okt 2005, 16:41
Zitat von teebee:
Delphi-Quellcode:
...
RichEdit1.SelStart := 0;
Richedit1.SelText := 'on: ' + '00:00:00 '+#13#10+#13#10;

Richedit1.SelText := 'on: ' + DateToStr(Now) + ' 00:00'+#13#10;
Richedit1.SelText := 'on: ' + DateToStr(Now) + ' 24:00 00:00:00'+#13#10;
...
Durch diese Code-Sequenz baust du aber den Text insgesamt falsch auf, und nur deswegen tritt der Fehler dann nicht mehr auf. Die ursprünglich nullte '-----'-Zeile (index-mäßig) muss ja nachher auf der Indexposition 1 rauskommen. Und die beiden anderen Zeilen werden dann darunter eingefügt. Richtig müsste diese betroffene Code-Stelle also so aussehen:

Delphi-Quellcode:
RichEdit1.SelStart := 0;
Richedit1.SelText := 'on: ' + '00:00:00 '+#13#10;
SelStart := Perform(EM_LINEINDEX,2,0);
Richedit1.SelText := 'on: ' + DateToStr(Now) + ' 00:00'+#13#10;
Richedit1.SelText := 'on: ' + DateToStr(Now) + ' 24:00 00:00:00'+#13#10;
...und dann tritt der Fehler eben doch wieder auf. Die Exception zwar nicht, weil du ja keinerlei Lines.Add mehr machst, aber den Output-Fehler gibt's trotzdem.


Zitat von Lannes:
kA, aber das kannst Du doch feststellen. Im System oder sytem32-Verzeichnis findest Du die beiden dll's. Die Riched32.dll hat dann nur noch eine Größe von 4Kb.
Stimmt! Sie hat nur 4KB. Also haben die den Fehler tatsächlich in dieser neueren RichEd20.dll eingebaut. Tsss, kaum zu glauben. Und davon ist jetzt die ganze Welt abhängig

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. Dort im Code jetzt jeweils nur irgend eine Kleinigkeit zu ändern, ist quasi immer nur so eine Art von "wegdrücken" des Errors, der nämlich nur aufgrund ganz bestimmter Konstellationen eintritt. Ändere ich die irgendwo nur minimal, dann ist es durchaus wahrscheinlich, dass auch dieser Error weg ist. Die Möglichkeit eines solchen Errors jedoch, wenn diese Bedingungen dann irgendwann mal wieder zufällig genau so eintreten sollten, bleibt aber natürlich leider.
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat
 


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 10:23 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