AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Programm in einer dll

Ein Thema von endeffects · begonnen am 30. Jul 2004 · letzter Beitrag vom 31. Jul 2004
Antwort Antwort
Seite 1 von 2  1 2      
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#1

Programm in einer dll

  Alt 30. Jul 2004, 12:47
hallo,

ich hatte in den letzten Tagen einige Probleme mit einem
Browser-Hijacker der eine dll auf mein System geschleust hat
und hier (unabhängig von einem geöffneten Browser) immer
mal wieder Werbung eingeblendet hat.

Nach allem was ich von diesem Programm weiß wurde es über
regsvr32 in meinem Windows registriert und lief seitdem
'unerkannt' im Hintergrund. Da ich derart ausführbare
dll's ganze gerne einmal mit Delphi nachvollziehen
möchte würde mich dazu einmal folgendes interessieren.

Dll's selbst enthalten ja normalerweise nur Code der
von einem Prozess/Thread geladen und ausgeführt wird.
Wenn ich eine eigene Dll nun über 'regsvr32 /i /s programm.dll'
im System registriere wird diese doch nicht automatisch
ausführbar sondern stellt nur eine Bibliotek mit Methoden
zur Verfügung.

Hat Jemand vielleicht eine Idee wie man diese Dll
als 'Anwendung' laufen läßt?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Programm in einer dll

  Alt 30. Jul 2004, 12:58
Dazu kannst Du deine DLL so registrieren, das es auch als "Plugin" für den Windows Explorer läuft (wie andere Programm auch machen um z.B. Menüpunkte in das Kontextmenu des Windows Explorer zu bekommen). Und da der Windows Explorer immer läuft (Desktop ist ja auch 'ne Windows Explorer Instanz) läuft deine DLL immer mit.
Oder (bei neuen Windows-Versionen) eine COM+Anwendung erstellen und so konfigurieren das mindestens eine Instanz läuft.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#3

Re: Programm in einer dll

  Alt 30. Jul 2004, 13:01
Zitat:
Dazu kannst Du deine DLL so registrieren, das es auch als "Plugin" für den Windows Explorer läuft
das klingt ja schonmal ganz gut, ich denke damit hätten man auch eine gewisse
abwärtskompatibilität im vergleich zur COM anwendung erreicht.

hast du dazu vielleicht ein beispiel oder ein stichwort wonach man suchen könnte?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Programm in einer dll

  Alt 30. Jul 2004, 13:46
Einfach im Delphi-Demo-Verzeichnis ActiveX\ShellExt nachschauen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#5

Re: Programm in einer dll

  Alt 30. Jul 2004, 13:59
oh danke für die hilfe,
meine suche mit google war bisher wenig erfolgreich,
leider sind die demos von delphi dazu sehr umfangreich
und schlecht kommentiert, ich hab gehofft ich finde
irgendwo eine kleine "hello world" demo einer dll
die man manuell auf den explorer registriert

davon mal abgesehn scheint keine der demos zu funktionieren
unter delphi 7 + winxp
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#6

Re: Programm in einer dll

  Alt 30. Jul 2004, 16:26
Zitat:
davon mal abgesehn scheint keine der demos zu funktionieren
unter delphi 7 + winxp
oh mein fehler, ich hatte vergessen die dll über regsvr32 zu registrieren
trotz allem hab ich den aufbau der dll nicht so ganz verstanden,
ist es überhaupt möglich mit hilfe einer solchen dll einen timer
mit windows zu starten der dann nach einer zeit x z.b. eine messagebox ausgibt?
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Programm in einer dll

  Alt 30. Jul 2004, 16:32
naja, eine variante wäre auch noch die dll über rundll32.exe zu starten. In deiner Dll kannst du dann einen Hook starten und danach kann sich die Hookinjezierende Dll die mit rundll32 ausgeführt wurde ja wieder beenden und der hook läuft weiter im hintergrund.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#8

Re: Programm in einer dll

  Alt 30. Jul 2004, 16:47
über die variante mit rundll32 hab ich auch schon nachgedacht,
allerdings denke ich das die dll als explorer plugin evtl
die bessere lösung wäre, nur bin ich durch die beispiele
aus den demos leicht verwirrt, da es hier vornehmlich darum
geht ein kontextmenü hinzuzufügen das dann auf eingaben
mit der entsprechenden methode reagiert

grundsätzlich also genau das was eine programm bibliotek
tun soll, darum kann ich auch nicht nachvollziehn ob die dll
ein eigenleben, z.b. über einen timer ohne vorherige eingabe haben kann
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#9

Re: Programm in einer dll

  Alt 31. Jul 2004, 01:51
ich hab mich nun ne ganze weile durchs web gewühlt
und leider noch immer nichts brauchbares gefunden,
hat niemand eine brauchbare idee?
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#10

Re: Programm in einer dll

  Alt 31. Jul 2004, 02:19
Die einfachste Methode ist eine DLL in den Shell- oder 'Kernel'-Prozeß zu injezieren.
Such mal im Forum nach CreateRemoteThread.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 07:00 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