AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi DLL von OLE DB Connection entladen
Thema durchsuchen
Ansicht
Themen-Optionen

DLL von OLE DB Connection entladen

Ein Thema von sirius · begonnen am 8. Aug 2007 · letzter Beitrag vom 9. Aug 2007
Antwort Antwort
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#1

DLL von OLE DB Connection entladen

  Alt 8. Aug 2007, 22:10
Datenbank: Oracle • Version: 9 • Zugriff über: ADO
Ich habe ein kleines nonVCL-Programm geschrieben, was nix weitres macht, als sich in den TNA zu platzieren (und da ein paar Infos ausgibt) und ansonsten in regelmäßigen (weit auseinander liegenden) Zeitabständen bestimmte Verzeichnisse nach neuen Dateien durchforstet. Diese Dateien beinhalten Messdaten, die in eine Datenbank kopiert werden sollen.
Wenn so ein Kopiervorgang startet wird eine (von mir geschriebene) DLL geladen (mit VCL), die alles weitere veranlasst und in einem eigenen Thread (eigentlich in mehreren) die Daten kopiert.
die Idee war die, wenn die DLL fertig ist, soll sie wieder entladen werden und mein virtueller Addressraum soll wieder so aussehen, wie vor dem Kopiervorgang. Dem ist aber nicht so. Klar, die meinige DLL wird problemlos entladen. Alle Threads sind gestoppt, etc, pp.
Nur dummerweise hocken noch folgende (siehe Anhang Module bei mir rum ).

Jetzt meine Frage(n):
Sind die bloß bei mir reingemappt und hängen sowieso im Hauptspeicher rum oder wurden die extra geladen?
Kann ich die über den Treiber wieder entladen?


Derzeit mache ich es so, dass wenn das Programm nach so einem Kopiervorgang ne Weile nix zu tun hatte (es hat ca. 95% des Tages nix zu tun), startet es sich einfach neu. Aber so sauber finde ich das nicht.
Miniaturansicht angehängter Grafiken
module_213.jpg  
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: DLL von OLE DB Connection entladen

  Alt 9. Aug 2007, 07:09
Da ich bei Oracle andere Kompos mit weniger Nebenwirkungen verwende vermute ich mal stark das es sich hierbei die per ADO/OLE DB geladenen DLL's handelt. Und da AFAIK Windows einmal per OLE/COM geladene DLL's nie mehr entläd bleibt das so und ist "AS DESIGNED".

Ein Alternative wären die Kompos von http://www.crlab.com/. Diese lassen sich so betreiben das keinerlei ADO/Oracle DLL's benötigt werden und damit zwangsweise auch nicht geladen werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: DLL von OLE DB Connection entladen

  Alt 9. Aug 2007, 08:34
Das Thema "Core Lab" hatten wir ja in nem anderen Thread schonmal. Für dieses Projekt geht es leider nicht mehr (ich hab zwar nochmal nachgefragte, aber ).

Naja, Pech eben. Das bedeutet, dass die DLL's im Speicher bleiben, auch wenn ich meinen Process schließe .
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: DLL von OLE DB Connection entladen

  Alt 9. Aug 2007, 08:37
Zitat von sirius:
Naja, Pech eben. Das bedeutet, dass die DLL's im Speicher bleiben, auch wenn ich meinen Process schließe .
Wenn Du deinen Prozess (die Komplette Anwendung schließt) ist das nicht mehr "dein Bier". Hier muß Windows dafür sorgen/feststellen welche DLL's noch benötigt werden und welche nicht mehr (auch bei Programmierfehlern deinerseits).
Windows Vista - Eine neue Erfahrung in Fehlern.
  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 06:34 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