Hi.
Also das ganze läuft so ab:
es gibt die sog. In-Process-Server, die werden meistens in DLLs implementiert. Diese InProc Server liegen irgendwo auf deinem System und sind in der Registry mit ihrer entsprechenden GUID eingetragen, die sieht z.B. so aus:
Quelltext
1:
| {E8B288E8-A8D3-4256-A9F2-07961C20FE5C} |
falls du dich mal gewundert hast, was die Dinger in der Registry zu suchen haben
So, d.h. ein InProc Server muss auf deinem System liegen. Denn (und damit zu deiner Frage):
Du kannst z.B. in Delphi auf "Komponente->ActiveX importieren" gehen und da auf hinzufügen. Da kannst dann EXEn und DLLs wählen und daraus wird dann ne entsprechende Unit für dich hergestellt, sprich es werden Interfaces mit eben den entsprechenden GUIDs erstellt.
Erstellst du nachher nen COM Objekt, passiert das über diese GUID und COM schaut nach, wo die zugehörige DLL liegt und liefert dann die entsprechenden Funktionen. -> Die DLL/EXE muss auf dem System vorhanden sein und ja, über [STRG][SPACE] bzw. [STRG][SHIFT][SPACE] kriegst du die code-hilfe, nachdem du die ActiveX bibliothek importiert hast.
Bei DCOM sieht's etwas anders aus, da kann der COM Server auch auf nem anderen Rechner im Netzwerk sein, das steht dann aber alles auch in der Registry.
Im Prinzip kümmert sich aber COM selber um die angelegenheiten. Und wird ein Server nicht gefunden, kriegst ne Exception
