AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Wo werden dll beim Registrieren in der Registry gespeichert?
Thema durchsuchen
Ansicht
Themen-Optionen

Wo werden dll beim Registrieren in der Registry gespeichert?

Ein Thema von Mike07 · begonnen am 25. Okt 2007 · letzter Beitrag vom 22. Dez 2007
Antwort Antwort
Seite 1 von 2  1 2      
Mike07

Registriert seit: 11. Sep 2007
20 Beiträge
 
Delphi 7 Personal
 
#1

Wo werden dll beim Registrieren in der Registry gespeichert?

  Alt 25. Okt 2007, 17:57
Der Titel beinhaltet ja eigentlich schon meine Frage.
Also wenn ich regsvr32 ausführe,in welchem Schlüssel der Registry wird das dann gespeichert?
Für mich wäre das wichtig,weil ich dann bei meinem Programm prüfen kann,ob die .dll schon registriert ist und um sie nachher wieder zu entfernen...
Michael
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 25. Okt 2007, 18:05
Beim Registrieren mit Regsvr32 werden eine Vielzahl von Schlüsseln geschrieben.
Am Einfachsten prüft man, ob die ProgId einer CoClass vorhanden ist.
Delphi-Quellcode:
function ProgIDExists(const ProgID:WideString):Boolean;
var
   tmp : TGUID;
begin
   Result := Succeeded(CLSIDFromProgID(PWideChar(ProgID), tmp));
end;
Die ProgId besteht immer aus 2 Namen getrennt durch einen Punkt.
z.B. "Word.Application" oder "MeinTest.Hauptobjekt"
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 09:45
Der richtige und aussagekräftigere Titel wäre wohl "Festellen, ob ein COM-Server im System registriert ist."

Wäre auch was für mein Tutorial.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Mike07

Registriert seit: 11. Sep 2007
20 Beiträge
 
Delphi 7 Personal
 
#4

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 11:47
ich wills ja gar nicht so kompliziert haben
was ist denn eine CoClass?
ist etwa die .dll-Datei eine CoClass?

Mir würde es eigentlich reichen,wenn einer wüsste,welche Schlüssel genau geschrieben werden.
Dann könnte man einfach prüfen,ob der/die Schlüssel vorhanden ist/sind und
wenn nicht erstellt man ihn/sie,sodass die .dll-Datei dann registriert ist!
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 11:54
Warum willst du unbedingt deine unsichere und auch unsaubere Lösung nehmen, wenn dir doch shmia eine saubere Lösung gegeben hat?

Eine CoClass ist eine Hilfsklasse für ein COM-Objekt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Mike07

Registriert seit: 11. Sep 2007
20 Beiträge
 
Delphi 7 Personal
 
#6

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 12:56
wieso ist das denn unsauber?

naja,ich habe jedenfalls den Quellcode eingefügt,
aber dann kommt immer der Fehler,dass "CLSIDFromProgID" ein undefinierter Bezeichner ist...
die "saubere" Lösung ist für mich erstmal Neuland,
deswegn muss ich mich damit erst länger beschäftigen,
um zu kapieren,wie man das jetzt einbinden kann^^
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 13:26
Weil du diuch alle Schlüssel enumerieren musst, um dein COM-Objekt zu finden und dann musst du noch entscheiden, ob der Eintrag eine COM--Objekt im System bekannt macht oder ab das irgendein anderer Eintrag ist. Warum also so etwas umständliches implementieren, wenn dir Windows alles schon auf dem Silbertablett präsentiert?

Da musst du mal gucken in welcher Unit die Funktion deklariert ist.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Reinhardtinho
Reinhardtinho

Registriert seit: 26. Feb 2007
411 Beiträge
 
Delphi 5 Enterprise
 
#8

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 15:05
Die Unit heißt ActiveX.
Ich habe viel von meinem Geld für Alkohol, Weiber und schnelle Autos ausgegeben ... Den Rest habe ich einfach verpraßt.

George Best - 22.05.1946 - 25.11.2005 - nordirischer Fußballspieler
  Mit Zitat antworten Zitat
Mike07

Registriert seit: 11. Sep 2007
20 Beiträge
 
Delphi 7 Personal
 
#9

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 16:05
ah,danke für die Antwort,das hilft mir weiter!
Habs schon ausgetestet,mit ActiveX funktioniert der Befehl.
Der Befehl ist doch eine Windows-API Funktion,
woher weiß man denn dann welche unit man für was einbinden muss.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

Registriert seit: 26. Mär 2007
Ort: Klingenstadt
541 Beiträge
 
Delphi 2007 Enterprise
 
#10

Re: Wo werden dll beim Registrieren in der Registry gespeich

  Alt 26. Okt 2007, 16:30
Zitat von Mike07:
woher weiß man denn dann welche unit man für was einbinden muss.
Ausprobieren, F1, PSDK, MSDN, DP, Google,... such Dir was aus.
Es ist zu wahr um schön zu sein...
  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 06:16 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