Einzelnen Beitrag anzeigen

Kamil

Registriert seit: 17. Aug 2002
178 Beiträge
 
#4

Re: Flotter Dreier in ner Shell Extension

  Alt 10. Nov 2003, 22:04
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
  Mit Zitat antworten Zitat