Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: COM-Server registrieren

  Alt 19. Okt 2007, 18:58
Zitat von Dezipaitor:
Ich dachte eigentlich, dass ein Marshall nur für OutOfProcess Server notwendig sind. Weil die Kommunikation über ein externes Protokoll passiert. D.h. Parameterwerte müssen als Bytestream gespeichert und auf der anderen Seite interpretiert werden.
Für InProcessServer ist das nicht notwendig, weil der Aufrufer und COM denselben Speicher sich teilen, ja sogar derselbe Process sind. Es ist also ein ganz normaler Stackwind und Stackunwind Aufruf.
Man braucht dann einen (eigenen) Marschaller wenn man Datentypen verwendet die der Standard-Marschaller von Windows nicht von sich aus behandeln kann. Bei Visual C++ ist es üblich eigenen eigenen Marschaller zu basteln, bei Delphi kann man AFAIK keinen eigenen entwickeln (außer mit sehr Low-Level API-Aufrufen).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat