AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi unit initialization wird nicht aufgerufen
Thema durchsuchen
Ansicht
Themen-Optionen

unit initialization wird nicht aufgerufen

Ein Thema von Gruber_Hans_12345 · begonnen am 12. Jul 2010 · letzter Beitrag vom 12. Jul 2010
Antwort Antwort
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.439 Beiträge
 
Delphi 2007 Professional
 
#1

unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 14:37
Ich habe ien Problem, ich verwende WPEditor 6.0, da ist eine Datei WPRTEDefs.pas dabei
Ich musste in der Datei was umbauen, und hab nun neu kompiliert.
Nun siehts so aus als ob der initializaiton teil gar nicht mehr aufgerufen wird.

Ich kann auch in der gesamten Unit keine Breakpoints mehr setzen!

Zum testen habe ich in einer kleienn funktion (die wandelt einen Float in einen Text um) den Wert mit 2 addiert, und siehe da, es wird DOCH diese funktion aufgerufen, aber es werden keinerlei Breakpoints als auch die initaliszation section nicht ausgeführt.

Ich habe diese unit auch schon zum Projekt selbst hinzugeüfgt, alle dcu gelöscht ....

Ich weiss im moment nicht weiter ... und das problem ist, die initialzation section ist sehr wichtig, da im moment leider gar nix mehr funit ....

kann mir wer noch nen tipp geben, wo ich da was drehen könnte?
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 14:48
Hallo,

soweit ich das raus lesen konnte verwendest du ja diese Komponente -> http://www.wpcubed.com/products/wptools/index.htm die haben einen Klasse Support mit dem Herrn Ziersch
Vielleicht kann dir der ja sagen, wie du Dein Problem lösen kannst ohne das Package zu ändern. Denn die sorgen auch oft dafür, dass es Updates gibt. Und dann müsstest du ja immer die Änderungen mit ziehen und testen.

Das löst zwar Dein Problem nicht direkt, aber vielleicht doch indirekt.

Zur direkten Lösung kann ich nur sagen, dass es eigentlich immer nach dem Schema funktionieren sollte. Unit ändern, Package neu Kompilieren und installieren. Mehr mache ich glaube ich auch nicht

Greez, Chris

[Edit]
WPRTEDefs.pas kann ich auch nicht debuggen . Ich nutzte noch WPTools 5. Dort kann ich aber in der WPINC.INC folgende zeilen ändern:
Delphi-Quellcode:
// Add Debug Information -------------------------------------------------------
{$IFNDEF NODEBUG}
   {.$DEFINE WPDEBUG}
{$ENDIF}
Punkt entfernen und Package nochmals kompilieren. Dann sollte es gehen
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules

Geändert von ChrisE (12. Jul 2010 um 15:00 Uhr) Grund: Delphi-Tag und Edit :-)
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#3

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 14:56
Hmm....manchmal hat bei mir schon ein "Projekt => Unit Puffer löschen" und anschliessendes Neu-Kompilieren und Neu-Installieren des Packages Wunder gewirkt....vielleicht probier das mal aus?
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.439 Beiträge
 
Delphi 2007 Professional
 
#4

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 15:02
danke mal für die lösungen

ich hab inzwischen schon bisschen was rausgefunden ...

es sind zwei probleme gewesen, eins davon habe ich "gelöst"

Das mit den breakpoints, war das mit nem Compilerschalter die Debug infos in dieser unit abgedraht wurden, nun kann ich breakpoints setzen.

Das zweite problem, das ich noch nicht lösen konnte, ist, das die "initializaiton" section der einen unit vor dem der anderen kommt

Delphi-Quellcode:
unit WPCTRMemo;
...
uses WPRTEDefs;
...
initialization
// sollte ja eigentlich erst NACH der initialization der unit WPRTEDefs klommen oder
das initialization der unit WPCTRMemo kommt nun VOR der initialization der unit WPRTEDefs ... und das macht mir hier nun probleme ....
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 15:11
Hallo,

wie du in der Unit und auch vielen anderen sehen kannst, wird die WPRTEDefs immer sehr früh eingebunden. Wann welche aber schlussendlich "Initalisiert" wird kann man meines wissens nach nicht beeinflussen. Das dürfte der Compiler selber entscheiden.

Ein Beispiel ist z.B. die WPTools_Reg.pas. Diese Unit ist die Einzige die Explizit im Package enthalten ist. Diese zieht dann alle anderen impliziet nach. Hier wird die WPRTEDefs in der uses fast als erstes Verwendet. Dennoch scheint der Fehler auf zu treten.

Hast du mal probiert die Unit ebenso Explizit in das Package mit auf zu nehmen. Und das noch vor der WPTools_Reg. Vielleicht bringt es das ja. Aber ich kenne die Nebeneffekte nicht. Also bitte vorsicht

Greez, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.439 Beiträge
 
Delphi 2007 Professional
 
#6

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 15:28
hab ich schon probiert ... ist ziemlich blöd im moment.

weiss nicht, wie ich es schaffe, das der diese eine unit wieder so wie vorher vor all den anderen macht ....
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 15:30
Hallo,

darf ich fragen was genau du machen willst? Vielleicht gibt es ja doch noch einen anderen Weg?

Greez, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.439 Beiträge
 
Delphi 2007 Professional
 
#8

AW: unit initialization wird nicht aufgerufen

  Alt 12. Jul 2010, 15:40
Also im Moment wieder alles so reparieren, das wieder alles funkt
Ich habe nun die sachen, so umgebaut, das er statt der variable zu verwenden direkt einfach die funktion verwendet .... nun funkts wieder so halbwegs, aber schön wer halt, wenn man es wieder so hinbrächte, das die unit order richtig ist ....
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:36 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