Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Unter Win2000 alles ok, unter Win98SE EListError ! (https://www.delphipraxis.net/59192-unter-win2000-alles-ok-unter-win98se-elisterror.html)

Jasmine 19. Dez 2005 10:01


Unter Win2000 alles ok, unter Win98SE EListError !
 
Liebe Delphi Freunde,

ich habe hier ein seltsames Problemchen.

Mein Programm habe ich unter Win2000 kompiliert und alles läuft auch
unter Win2000 einwandfrei (ebenfalls XP).

Unter Win98SE startet das Programm jedoch garnicht, es kommt zu einem
..caused an exception eedfadeH
und dann
Exception EList Error
Registerkarte mit Index 0 konnte nicht gelöscht werden.

In meinem Programm habe ich ein TPageControl mit mehreren TTabSheet drin.
Auf einem der TTabSheets habe ich weiters TPageControl mit mehreren TTabSheets
drin. Die Styles der TTabSheets sind auf tsFlatButtons gesetz und
damit die Tabs nicht sichbar sind, erfolgt im FormShow
Delphi-Quellcode:
for i:=0 to 14 do Pages.Pages[i].TabVisible:=false;
for i:=0 to 6 do Pages2.Pages[i].TabVisible:=false;
Wobei Pages und Pages2 die Namen der beiden TTabSheets sind.

Ich habe dann außerdem mein Delphi 7 auf diesem Win98 Rechner installiert
und wollte schau, was passiert, wenn ich meine Applikation unter Win98
kompiliere.

Jedoch weigert sich Delphi 7 schon, wenn ich meinen Source Code laden will:

Fehler beim Erzeugen von Formular: Registerkarte mit Index 0 konnte nicht gelöscht werden.
Das Formular wird auch garnicht angezeigt.

Das ist alles sehr seltsam und passiert ja nur unter Win98.

Hat einer von Euch damit schon Erfahrung gehabt.

Ich würde mich sehr über Tips und Ideen freuen.

Dankeeee,

Jasmine

:cat:

chaosben 19. Dez 2005 10:11

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Also grundsätzlich fällt mir folgendes dazu ein:
Da die Meldung "kann nicht gelöscht werden" kommt, denke ich, das du deine for-Schleife umkehren solltest.
Lass sie mal zum Test von
Delphi-Quellcode:
Pages.PageCount-1 downto 0
laufen. Es könne nämlich sein, das, wenn du das 0. Element invisible gemacht hast, die Anzahl der Pages um 1 reduziert ist. Du könntest das auch mit dem Debugger und einem Breakpoint rausbekommen.

Warum das nur unter Win98 so ist? Das PageControl ist ja Teil von Windows, und wird von der VCL nur gekapselt (widersprecht mir wenn ich Unrecht habe). Also könnte es sein, das sich zwischen Win98 und Win2k etwas an dem Control geändert haben könnte. Theoretisch. Vielleicht :stupid:

Jasmine 19. Dez 2005 10:23

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Hi,

danke für die Info.

Habe die Schleifen mal komplett ausgeklammert, also nicht "invisible"
gemacht und der Fehler tritt immer noch auf.

Muss irgendwo anders dran liegen.

Jasmine

:cat:

ichbins 19. Dez 2005 10:36

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Du kannst es ja überprüfen, indem du praktisch hinter jede Codezeile ein Showmessage schreibst, welches dir anzeigt, an welcher Position du bist. Dann weisst du genau wo der Fehler auftritt.

Ich hatte auch mal ein Problem mit Abwärtskompatibilität zu Win98SE. Da hat eine wichtige Umgebungsvariable gefehlt.

ringli 19. Dez 2005 10:38

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Hast du schonmal probiert ein einfaches Testprojekt mit zwei Tabsheets zu erstellen? Nur um erstmal zu gucken ob es überhaupt an den Tabsheets liegt.

Daniel Schuhmann 19. Dez 2005 11:31

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Hast Du zufällig eine ImageList drin, die schon zur Entwurfszeit mit Daten gefüllt wird? Hatte ein ähnliches Problem mit Windows XP und Windows 95, da lag es an der ImageList. Lese ich hingegen zur Laufzeit die Bilder aus einer Ressource ein, dann gehts.

Jasmine 19. Dez 2005 13:53

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Hallo zusammen,

also ich habe mal einfach ein neues Projekt gestartet, zwei TabSheets
drauf gesetzt, unter Win2K compiliert und unter Win98 laufen lassen -
kein Problem, keine Fehler !

Eine ImageList habe ich auch nicht drin, allerdings normale TImages und TSpeedButtons
mit Bildern drin, alles mal rausgeschmissen, Fehler immer noch da.

Nun weiß ich auch nicht weiter, da der Fehler ja schon bei Programmstart,
bzw. beim Laden des Projektes unter Win98 auftritt.

Beim googlen bin ich nach der Suche nach der "eedfadeH" Exception, auf Informationen
gestoßen, dass man zwei Dateien, die riched20.dll und die riched32.dll in den
Win98 windows/system32 Ordner kopieren sollte.

Hab ich allerdings noch nicht gemacht, mir ist dann aber aufgefallen, dass ich auch
ein RichEdit verwende, allerdings nicht in den TabSheets.

Ich werde wohl nun mal systematisch alles nacheinander rausschmeißen, kompilieren
und schauen, wie es sich unter Win98 verhält.

Ein Delphi 7.1 Update hab ich natürlich längst drauf.

Wenn einer von Euch noch eine Idee hat oder den Fehler kennt,
wäre ich über jegliche Infos sehr, sehr dankbar.

Jasmine

:cat:

jim_raynor 19. Dez 2005 14:21

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Nun, wenn du schon auf die rich*.dlls kommst, dann wird es höchstwahrscheinlich daran liegen, dass Delphi eine neuere rich*.dll erwartet, als bei Win98 installiert ...

Jasmine 19. Dez 2005 14:29

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Hallo,

habe mir nun mal madExcept installiert und es ergibt sich ein

TabControlError in der ComCtrls

Ich muss auch dazu sagen, dass meine verwendete Win98 Version die
allererste, ohne jegliche Updates oder Patches ist. Einfach nur
so um zu testen, ob mein Programm auch unter Win98 arbeitet.

Was kann ich noch tun ?

Ich versuche mal, ob es eine neuere ComCtrls.dll für Win98 gibt.

Jasmine

:cat:

maximus Caesar 19. Dez 2005 14:39

Re: Unter Win2000 alles ok, unter Win98SE EListError !
 
Also ich hatte das Problem auch mal, nur lag es dabei an den Timern.
Da hatte ich ein Projekt in Win XP erstellt, und sollange ich einen Timer drinn hatte lief es nicht unter Win 98


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:33 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