Fungsi CoGetStdMarshalEx (combaseapi.h)
Membuat marshaler standar agregat untuk digunakan dengan handler sisi klien yang ringan.
Sintaks
HRESULT CoGetStdMarshalEx(
[in] LPUNKNOWN pUnkOuter,
[in] DWORD smexflags,
[out] LPUNKNOWN *ppUnkInner
);
Parameter
[in] pUnkOuter
Penunjuk ke IUnknown yang mengendalikan.
[in] smexflags
Salah satu dari dua nilai yang menunjukkan apakah marshaler standar agregat berada di sisi klien atau sisi server. Bendera ini didefinisikan dalam enumerasi STDMSHLFLAGS .
Nilai | Makna |
---|---|
|
Menunjukkan marshaler standar agregat sisi server. |
|
Menunjukkan marshaler standar agregat sisi klien (handler). |
[out] ppUnkInner
Pada pengembalian yang berhasil, alamat pointer ke antarmuka IUnknown pada marshaler standar agregat yang baru dibuat. Jika terjadi kesalahan, nilai ini adalah NULL.
Nilai kembali
Fungsi ini mengembalikan S_OK.
Keterangan
Server memanggil CoGetStdMarshalEx yang meneruskan bendera SMEXF_SERVER. Ini menciptakan marshaler standar sisi server (dikenal sebagai manajer stub). Handler memanggil CoGetStdMarshalEx yang meneruskan bendera SMEXF_HANDLER. Ini membuat marshaler standar sisi klien (dikenal sebagai manajer proksi). Perhatikan bahwa saat memanggil fungsi ini, handler harus meneruskan pengontrol asli yang tidak diketahui yang diteruskan ke handler saat handler dibuat. Ini akan menjadi sistem yang diimplementasikan mengendalikan tidak diketahui. Kegagalan untuk meneruskan IUnknown yang benar menghasilkan kesalahan yang dikembalikan. Jika berhasil, ppUnkInner yang dikembalikan adalah pengontrol yang tidak diketahui dari objek dalam. Server dan handler harus menyimpan pointer ini, dan dapat menggunakannya untuk memanggil IUnknown::QueryInterface untuk antarmuka IMarshal .
Persyaratan
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | combaseapi.h (termasuk Objbase.h) |
Pustaka | Ole32.lib |
DLL | Ole32.dll |