AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi DLL für fremde Applikation entwerfen
Thema durchsuchen
Ansicht
Themen-Optionen

DLL für fremde Applikation entwerfen

Ein Thema von dizzler · begonnen am 18. Nov 2007 · letzter Beitrag vom 20. Nov 2007
Antwort Antwort
dizzler

Registriert seit: 23. Apr 2006
8 Beiträge
 
#1

DLL für fremde Applikation entwerfen

  Alt 18. Nov 2007, 17:29
Hallo Leute,
ich möchte gerne versuchen, ein Plugin (DLL) für ein Freeware-Programm zu entwerfen.
Dieses Programm checkt bei jedem Start einen Plugin-Ordner und listet dann später alle gefundenen Plugins auf.

Jetzt stellt sich mir die Frage: Wie muss mein Plugin aufgebaut sein, damit es vom Programm erkannt wird?
Und kann man das überhaupt ohne weiteres (ohne Kontakt zum Entwickler, etc) bewerkstelligen?

Ich könnte mir vorstellen, dass man mittels Debugger ein paar Programm-Funktionen, welche durch Plugins angesprochen werden können, ermitteln kann. Jedoch müsste ich es erstmal schaffen, dass mein "Plugin" vom Programm erkannt wird.

Ich konnte leider keine Hilfestellungen dazu finden... womöglich fallen mir auch einfach nicht die richtigen Suchbegriffe ein.


Ich hoffe hier kann mir Jemand helfen. Danke schonmal.


MfG,
dizzler
There are two rules for success:
1) Never share all of your knowledge...
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: DLL für fremde Applikation entwerfen

  Alt 18. Nov 2007, 17:38
Wenn dieses Programm für Plugins ausgelegt ist, sollte es eigentlich die benötigten Funktionen dokumentieren.
Im unwahrscheinlichen Fall, dass dem nicht so ist, könntest du vorhandene Plugin-DLLs auf die exportierten Funktionen hin untersuchen. Luckie hat dazu mal eine Klasse geschrieben.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
dizzler

Registriert seit: 23. Apr 2006
8 Beiträge
 
#3

Re: DLL für fremde Applikation entwerfen

  Alt 18. Nov 2007, 18:30
Zitat:
Wenn dieses Programm für Plugins ausgelegt ist, sollte es eigentlich die benötigten Funktionen dokumentieren.
Leider nicht. Auf der Homepage ist nichts derartiges vorzufinden.

Zitat:
Im unwahrscheinlichen Fall, dass dem nicht so ist, könntest du vorhandene Plugin-DLLs auf die exportierten Funktionen hin untersuchen.
Mein Disassembler listet mir zwar viele Imports auf, aber sagt mir, die Anzahl der Exports sei 0.

Zitat:
Luckie hat dazu mal eine Klasse geschrieben.
Was genau soll diese Klasse machen?
There are two rules for success:
1) Never share all of your knowledge...
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: DLL für fremde Applikation entwerfen

  Alt 18. Nov 2007, 18:38
Wie soll denn eine DLL funktionieren, die nichts exportiert? Mir fallen hier nur Resourcen-DLLs ein, die wohl nicht für Plugins taugen.
Luckies Klasse untersucht eine DLL auf ihre Exporte.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: DLL für fremde Applikation entwerfen

  Alt 18. Nov 2007, 18:48
Zitat von dizzler:
Hallo Leute,
ich möchte gerne versuchen, ein Plugin (DLL) für ein Freeware-Programm zu entwerfen.
wie heisst denn das programm??? vllt kann man dir dann mehr weiter helfen..

und programme die plugins zulassen haben oft direkt im pluginordner nen bsp mit quellcode, hast du da schon mal nachgesehen??

mfg
Martin
  Mit Zitat antworten Zitat
Relicted

Registriert seit: 24. Jan 2006
Ort: Iserlohn
646 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: DLL für fremde Applikation entwerfen

  Alt 19. Nov 2007, 07:16
der zeigt dir auch einige infos an: dependency walker
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: DLL für fremde Applikation entwerfen

  Alt 19. Nov 2007, 08:26
Die Exports werden dir nicht viel helfen, da du keine Informationen über eventuelle Parameter bekommst. Aber wenn es zu einem Programm eine Pluginschnittstelle gibt, dann sollte diese auch irgendwo dokumentiert sein. Sollte sich beim Programm oder auf der Herstellerseite nichts finden lassen, wirst du wohl den Entwickler direkt ansprechen müssen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
dizzler

Registriert seit: 23. Apr 2006
8 Beiträge
 
#8

Re: DLL für fremde Applikation entwerfen

  Alt 20. Nov 2007, 13:25
Zitat von lbccaleb:
Zitat von dizzler:
Hallo Leute,
ich möchte gerne versuchen, ein Plugin (DLL) für ein Freeware-Programm zu entwerfen.
wie heisst denn das programm??? vllt kann man dir dann mehr weiter helfen..

und programme die plugins zulassen haben oft direkt im pluginordner nen bsp mit quellcode, hast du da schon mal nachgesehen??

mfg
Das Programm heißt "AltDVB" und ist eine Software zum TV schauen am PC. Auf der Homepage ( altdvb.ro ) gibt es die Version 2.1 zum Download - dort gibt es sogar eine kleine Readme im Plugin-Ordner. Mit der konnte ich allerdings nicht viel anfangen.

Mein Plugin soll zu bestimmten Zeiten Kanäle umschalten können und Sendungen automatisch aufnehmen (im Optimalfall dazu die EPG-Daten überwachen um so zu sehen, wann die Sendung beginnt/endet).



Mit diesem "Dependency Walker" konnte ich jetzt auch einige Export-Funktionen ausfindig machen... jetzt muss ich noch herausfinden, welche davon relevant sind und dann reversen, welche Parameter übergeben werden müssen. Leichter wäre es sicherlich, wenn man die Informationen irgendwo im Netz finden würde :]
There are two rules for success:
1) Never share all of your knowledge...
  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 00:07 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