Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Flotter Dreier in ner Shell Extension (https://www.delphipraxis.net/11567-flotter-dreier-ner-shell-extension.html)

Assarbad 9. Nov 2003 18:47


Flotter Dreier in ner Shell Extension
 
Hiho,

wie bekomme ich denn drei verschiedene Shellextensions in eine DLL? Ich sehe noch kein Land, wenn es darum geht die Extensions auseinanderzuhalten!

Oliver

Kamil 10. Nov 2003 20:29

Re: Flotter Dreier in ner Shell Extension
 
Wo kannst du sie nicht auseinanderhalten? Jede ShellExtenstion hat doch ne eindeutige ID.

Assarbad 10. Nov 2003 20:38

Re: Flotter Dreier in ner Shell Extension
 
Logo, fuer die Aussenwelt. Aber innerhalb meiner DLL sehe ich das bisher noch nicht ganz so ... klaer mich doch einfach auch. Ich kann dich auch gern in Sachen NT Native API oder NT Systemprogrammierung oder NT Treiberprogrammierung aufklaern ;)

Kamil 10. Nov 2003 21:04

Re: Flotter Dreier in ner Shell Extension
 
Hä? An welcher stelle kannst du sie nicht auseinander halten??? Ich verstehe es noch immer nicht. Die GUID bestimmst doch du und das während der Entwicklung.
Deine Shellextensions sind doch Objekte, die irgendwelche Interfaces implementieren.
Dann hast du ne ClassFactory, die die Objekte erstellt.
Du kannst mehrere ClassFactories haben(für jede Shellextension eine)
Wenn DllGetClassObject aufgerufen wird, dann muss die richtige ClassFactory das Objekt erstellen. Da dir sowohl die ID der ClassFactory als auch der Typ des Interfaces übergeben wird sollte es doch kein Problem sein.

Code:
STDAPI DllGetClassObject(
  REFCLSID rclsid,        <--- ID von der ClassFactory
  REFIID riid,            <--- ID entweder IClassFactory oder IClassFactory2
  LPVOID * ppv
);
IClassFactory.CreateInstance
bzw
IClassFactory2.CreateInstanceLic
erstellen dann deine Shellextension

Hoffe ich habe hier keinen Schwachsinn erzählt. Ist schon länger her als ich mir Shellextensions was gemacht habe... notfalls bei msdn.microsoft.com nachschauen

Edit: habs ein wenig korrigiert
Edit2: noch ein weing korrigiert

Assarbad 10. Nov 2003 21:22

Re: Flotter Dreier in ner Shell Extension
 
Danke, ich hab zwar mein Projekt grade nicht hier, aber ich glaube ich verstehe, worauf du hinaus willst. Danke fuer die vorlaeufige Erleuchtung. Ich glaube es hat geholfen. Sollten noch Probleme auftauchen, melde ich mich nochmal.

Mir war noch nicht ganz klar, an welcher Stelle sich das Teil die Objektreferenz holt. Jetzt erscheint es klarer. Sorry, hab gestern Nachmittag damit begonnen mich mit dem Thema zu befassen.

Danke also nochmal ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:21 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