Hallo,
ich habe eine kleine CGI Anwendung (über den Wizard) erstellt. Die Hauptunit enthällt eine Klasse, welche von TWebModule abgeleitet ist und als Container für diverse Advantage Datenbankobjekte dient.
Delphi-Quellcode:
type
TMain = class(TWebModule)
ConCT: TAdsConnection;
ConSYS: TAdsConnection;
qCtCheck: TAdsQuery;
tblCtCheck: TAdsTable;
Ich kann in dem Programm Problemlos die übergebenen Werte auslesen und auch wunderbahre Ausgabeseiten erzeugen. Alles läuft solange gut, bios ich auf ein ADS-Objeckt zugreifen möchte. Wenn dies geschiht wird eine
Exception (Zugriffsverletzung bei Adresse 0049A65F in Modul 'MeinProg.exe'. Lesen von Adresse 000000C0) ausgelöst.
Hierbei kann der Zugrif noch so Banal sein ein einfaches
if not Main.ConCT.IsConnected then begin
führt zu dem Fehler. Auch wenn ich das tADSConnection-Objekt per Hand erzeuge (
self.ConCT := tADSConnection.Create(nil);
) wird diese
Exception ausgelöst (das erzeugen selber liefert keinen Fehler, aber der erste Zugriff danach).
Interessanterweise, Zeigt mir meine Firewall an, das, wenn ich die ADSConnection zur Designzeit Conneckte, beim Programmstart ein Zugriff auf die Datenbank gemacht wird - die Komponente also scheinbar korreckt arbeitet, nur sobald ich aus dem Wuelltext drauf zugreifen möchte knallt es.
Was Mache ich Falsch?? Was übersehe ich??
Wenn jemand von euch eine Idee hat immer her damit, ich fange hier einmälig an zu verzweifeln.
Gruß
Klabautermann
PS: Diese Frage wurde paralel auch im
DF und
DSDT gestellt. Sollte eine lösung in einem der anderen Foren früher gefunden werden, veröffendliche ich sie selbstverständlich hier.