Sichere Arrays

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Verwenden der Delphi- oder RIDL-Syntax


COM verlangt, dass Arrays mittels eines speziellen Datentyps, nämlich als SafeArray, übergeben werden. Um das zu erreichen, können Sie SafeArrays durch den Aufruf bestimmter COM-Funktionen erstellen und wieder freigeben. Sämtliche Elemente eines SafeArrays müssen gültige automatisierungskompatible Typen sein. Der Delphi-Compiler ist in der Lage, SafeArrays von COM zu identifizieren, und ruft automatisch die COM API auf, um SafeArrays zu erstellen, zu kopieren und wieder freizugeben.

Delphi:

 procedure HighLightLines(Lines: PSafeArray);
C++:
HRESULT STDMETHODCALLTYPE HighlightLines(LPSAFEARRAY Lines)

Im Typbibliothekseditor muss für ein SafeArray der Elementtyp angegeben werden. Für das folgende SafeArray ist beispielsweise der Elementtyp Integer angegeben:

 HRESULT _stdcall HighlightLines(SAFEARRAY(long) Lines);
Hinweis: Obwohl Sie den Elementtyp angeben müssen, wenn Sie einen SafeArray-Typ im Typbibliothekseditor deklarieren, geht aus der Deklaration in der generierten _TLB-Unit der Elementtyp nicht hervor.

Siehe auch