Auf Englisch lesen

Freigeben über


Die type_UserFree-Funktion

Der <Typ>_UserFree Funktion ist eine Hilfsfunktion für die Attribute [ wire_marshal] und [ user_marshal] . Die Stubs rufen diese Funktion auf, um die Daten auf der Serverseite freizuschalten. Die Funktion wird wie folgt definiert:

void __RPC_USER  <type>_UserFree(
    unsigned long __RPC_FAR * pFlags,
    <type_name>  __RPC_FAR *  pMyObj );

Der <Typ> im Funktionsnamen bedeutet, dass der im [wire_marshal] oder [user_marshal] Typdefinition angegebene Benutzertyp angegeben ist.

Der pFlags--Parameter ist ein Zeiger auf ein nicht signiertes langes Flagfeld. Das obere Wort des Flags enthält NDR-Datendarstellungskennzeichnungen gemäß der Definition von OSF DCE für Gleitkomma-, Bytereihenfolge- und Zeichendarstellungen. Das untere Wort enthält ein Marshaling-Kontextflagge gemäß der Definition durch den COM-Kanal. Das genaue Layout der Flags innerhalb des Felds wird in Die type_UserSize Functionbeschrieben.

Der pMyObj Parameter ist ein Zeiger auf ein Benutzertypobjekt. Das NDR-Modul gibt das Objekt der obersten Ebene frei. Sie sind für das Freigeben von Objekten verantwortlich, auf die das Objekt der obersten Ebene verweisen kann.

Ausnahmen müssen lokal abgefangen und behandelt werden, Ausnahmen dürfen den Aufrufstapel nicht propigieren.

Marshaling-Regeln für user_marshal und wire_marshal

wire_marshal

user_marshal