AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi DLL mehrmals laden / mehrere Instanzen bei einem Prozess

DLL mehrmals laden / mehrere Instanzen bei einem Prozess

Ein Thema von Thomas233 · begonnen am 27. Mai 2006 · letzter Beitrag vom 15. Jun 2006
 
Thomas233

Registriert seit: 20. Feb 2004
Ort: Villach
66 Beiträge
 
Delphi 2005 Personal
 
#3

Re: DLL mehrmals laden / mehrere Instanzen bei einem Prozess

  Alt 28. Mai 2006, 10:56
Nunja, mein Ziel war es eigentlich die Verwaltung mehrer Zustände/Daten (ich sag einfach mal so dazu) von der Dll fern zu halten da ich das ganze nicht zu kompliziert machen möchte, vor allem deshalb weil später vielleicht auch einmal andere Personen solche Dlls selbst schreiben können sollen.

In der Dll befinden sich nähmlich meistens Fenster/Formulare die nun ohne mehrmaliges laden der Dll auch manuell mehrmals erstellt werden müssten (ich meine jetzt in der Dll durch den Author selbst).
Ausserdem müsste man bei jedem Funktionsaufruf in der Dll unterscheiden können welches Formular/Fenster angezeigt werden soll bzw. welches gerade aktiv ist oder ob eben ein neues erstellt werden soll.
In Delphi wäre das ja z.b. anhand von Arrays oder Listen kein grosses Problem, aber z.b. in C stelle ich mir das nicht so einfach vor.

Dadurch das nun ausserdem verschiedene Dlls verwendet werden müsste ich im Hauptprogramm selbst irgendwie einen Zähler integrieren der herausfindet welches Fenster der aktuellen Dll gerade angezeigt werden soll und die entsprechende Id dann an die Dll übergibt.

Beispiel:
Modul 1)irgendwas.dll -> Fenster 1 (=Fenster-Id 1)
Modul 2)irgendwasanderes.dll -> Fenster 1 (=Fenster-Id 1)
Modul 3)irgendwas.dll -> Fenster 2 (=Fenster-Id 2)

Das würde bedeuten das eine Instanz von irgendwas.dll zwei Fenster verwalten müsste. Im Hauptprogramm selbst musste ich nun z.b. bei Modul 3) eine Funktion in irgendwas.dll aufrufen und gleichzeitig die Fenster-Id "2" mitgeben damit die Dll weiss das mit dem zweiten Fenster gearbeitet wird.

So, ich befürchte das war jetzt etwas etwas kompliziert und evtl. unverständlich, aber anders konnte ich es leider nicht erklären.

Falls jemand eine Idee hat wie man das einfacher lösen könnte (das war halt jetzt einmal meine Idee) dann würde ich mich über eine entsprechende Antwort sehr erfreut.

Vielen Dank !

Mfg.
Thomas
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 08:48 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-2025 by Thomas Breitkreuz