AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi TSQLConnection zur Laufzeit erzeugen
Thema durchsuchen
Ansicht
Themen-Optionen

TSQLConnection zur Laufzeit erzeugen

Ein Thema von Barthiboy · begonnen am 4. Jul 2014 · letzter Beitrag vom 4. Jul 2014
Antwort Antwort
Barthiboy

Registriert seit: 4. Nov 2011
36 Beiträge
 
#1

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 10:49
@Jumpy
der oben angeführte Code wird in dem Thread ausgeführt.
Alle variablen sind auch Thread zugehörig.

@ensaron
In meinem Verzeichnis ist keine dll.
Ich kann mir auch nicht vorstellen dass es daran liegt, da ja die zur Entwicklungszeit erstellten Komponenten ja auf die Datenbank zugreifen können.
Ich habe mit Processmonitor den Programm start mal aufgezeichnet.
Allerdings konnte ich keinen Fehler finden. Wobei ich auch nicht so genau weiß wonach ich suchen muss.
Im Anhang mal der Log
Angehängte Dateien
Dateityp: rar Logfile.rar (664,4 KB, 5x aufgerufen)
  Mit Zitat antworten Zitat
ensaron

Registriert seit: 29. Aug 2008
Ort: 10369 Berlin
63 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 11:19
Ich hab das jetzt nur mal überflogen, aber folgendes ist mir aufgefallen:
Am Anfang werden die dbxmss.dll und sqlncli10.dll gefunden und geladen.
Ab Zeile 105216 in deiner Logdatei wird dann versucht, eine ".DLL" zu laden. Die wird in ziemlich vielen Verzeichnissen gesucht aber nicht gefunden.

Anschließend ab Zeile 105391 wird die dbxmss.dll nicht mehr gefunden, was die Fehlermeldung verursachen dürfte. Vielleicht hängt das ja mit dem vorhergehenden Versuch zusammen, eine DLL ohne Namen zu laden.
  Mit Zitat antworten Zitat
Barthiboy

Registriert seit: 4. Nov 2011
36 Beiträge
 
#3

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 11:40
Puuuu,
woher der Fehler genau kommt kann ich leider nicht sagen.
Ich verwende in meinem Programm die OpenGL.dll
Ich bin jetzt im Debugger durchgegangen, bis der '.DLL' Aufruf kommt.
Bei dem Funktionsaufruf:
PixelFormat := ChoosePixelFormat(h_DC, @pfd);
Hier ist jetzt leider nicht mehr viel zu debuggen, da wie gesagt dll Aufruf.
Des gibts doch nicht. So ein Sch.......
  Mit Zitat antworten Zitat
Barthiboy

Registriert seit: 4. Nov 2011
36 Beiträge
 
#4

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 11:52
Also jetzt habe ich die OpenGL Gaudi mal ausgeklammert.
Und siehe da, es wird zumindest die dbxdrivers.ini gefunden und aufgemacht.
Der Fehler ist aber nach wie vor da.
Im Anhang noch mal ein Log.
Kannst du erkennen wo der Fehler ist?
Ziemlich am Ende des Logfiles
Angehängte Dateien
Dateityp: rar Logfile2.rar (40,1 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.739 Beiträge
 
Delphi 6 Enterprise
 
#5

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 12:15
Braucht man nicht für dlls in Threads und sowas Coinitialize? Oder müssen DB-Zugriffe nicht immer über den Main-Thread laufen?

Threads ist nicht mein Thema, obiges sind aus meinem Halbwissen (erlangt beim Schmökern in der DP) entstandene Fragen.
Ralph
  Mit Zitat antworten Zitat
Barthiboy

Registriert seit: 4. Nov 2011
36 Beiträge
 
#6

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 12:27
Vor dem Wochenende den Fehler gefunden:
Die Lösung:
Delphi-Quellcode:
uses
  ...,
  WinApi.ActiveX;
 
  ..
 
begin
  CoInitialize(nil);
  try
    // Your code here
  finally
    CoUninitialize;
  end;
end;
Super danke für den Tip.
Warum das jetzt funktioniert muss ich jetzt aber erst noch herausfinden.
Danke

Geändert von Barthiboy ( 4. Jul 2014 um 12:43 Uhr)
  Mit Zitat antworten Zitat
Barthiboy

Registriert seit: 4. Nov 2011
36 Beiträge
 
#7

AW: TSQLConnection zur Laufzeit erzeugen

  Alt 4. Jul 2014, 12:45
Haha
Den Link hätte ich schon früher finden müssen.
Für alle die das gleich Problem haben:

http://docwiki.embarcadero.com/RADSt...ic_Information
  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 01:46 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 by Thomas Breitkreuz