Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#1

Warum wird TZConnection.AfterConnect auf einem Rechner nicht ausgelöst?

  Alt 23. Okt 2016, 21:04
Datenbank: SQlite • Version: 3 • Zugriff über: ZEOS
Hi,

ich hab ja schon länger nichts mehr mit Delphi gemacht.. daher steh ich grad wie der Ochs vorm Berg

Ich habe eine frische Installation von Delphi 10.1 Berlin (24.0.22858.6822).
Auch frisch da rein installiert ist ZEOS 7.2.1-rc.

Die gleiche installation habe ich auf einem zweiten Rechner gemacht (Heim-PC und Notebook).

Ich habe eine Anwendung mit einem DataModule. Dort ist eine TZConnection auf eine SQlite3-Datenbank drauf.
Das DataModule wird direkt zum Start der Anwendung instanziert, noch vor dem MainForm.
Im Objektinspektor der Connection ist Connected auf true (sogar DesignConnection ist an).
Ich habe das Event AfterConnect verdrahtet und führe dort direkt auf der Connection ein SQL-Script aus, das die Datenbank initial befüllt.

Auf meinem Heimrechner tut es (=das Event wird ausgeführt und die Datenbank befüllt), auf meinem Notebook nicht (= das Event wird nicht ausgeführt). Auch beim Debuggen: Auf dem Heimrechner trifft ein Breakpoint den Einstieg in die Methode, auf dem Notebook nicht.

Der Source ist identisch (gleiches Repo geclont, aber auch 1:1 Kopie ausprobiert), die ZEOS-Sourcen sind auch identisch (1:1 Kopie).

Wenn ich die .exe vom Heimrechner auf das Notebook kopiere funktioniert die DB-Anlage auch dort, es liegt also auch nicht z.B. an einer anderen SQLite-Version auf dem anderen Rechner.

Was kann der Grund sein, dass die gleichen Sourcen auf Rechner A eine Methode ausführen, auf Rechner B aber nicht?
Auch sonderbar: Das Kompilat auf dem Heimrechner ist immer 18568906 bytes gross, das vom Notebook immer 18547184, also ca. 21kb kleiner.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat